aboutsummaryrefslogtreecommitdiff
path: root/runtime/src/main/java
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2022-06-16 23:06:03 +0800
committershedaniel <daniel@shedaniel.me>2023-05-29 20:57:19 +0800
commit09b4754a4239b12b3aa3da0ee557e1aa804787a5 (patch)
tree2a771d6c960b6eab220a2330074abadbb7bb6eee /runtime/src/main/java
parentf0486dd7451ae2d2efb8fbc72daf8e63b190eaf0 (diff)
downloadRoughlyEnoughItems-09b4754a4239b12b3aa3da0ee557e1aa804787a5.tar.gz
RoughlyEnoughItems-09b4754a4239b12b3aa3da0ee557e1aa804787a5.tar.bz2
RoughlyEnoughItems-09b4754a4239b12b3aa3da0ee557e1aa804787a5.zip
Add acceptsNull() in EntryDefinition
Diffstat (limited to 'runtime/src/main/java')
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/common/entry/TypedEntryStack.java5
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/FluidEntryDefinition.java5
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/ItemEntryDefinition.java5
3 files changed, 15 insertions, 0 deletions
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/TypedEntryStack.java b/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/TypedEntryStack.java
index 7112af245..5d159d79b 100644
--- a/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/TypedEntryStack.java
+++ b/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/TypedEntryStack.java
@@ -34,6 +34,11 @@ public class TypedEntryStack<T> extends AbstractEntryStack<T> {
public TypedEntryStack(EntryDefinition<T> definition, T value) {
this.definition = definition;
this.value = value;
+ if (!definition.acceptsNull()) {
+ if (value == null) {
+ throw new IllegalArgumentException("Value cannot be null for " + definition.getType().getId());
+ }
+ }
}
@Override
diff --git a/runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/FluidEntryDefinition.java b/runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/FluidEntryDefinition.java
index d3055d0c8..7646fa1e8 100644
--- a/runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/FluidEntryDefinition.java
+++ b/runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/FluidEntryDefinition.java
@@ -185,6 +185,11 @@ public class FluidEntryDefinition implements EntryDefinition<FluidStack>, EntryS
}
@Override
+ public boolean acceptsNull() {
+ return false;
+ }
+
+ @Override
public CompoundTag save(EntryStack<FluidStack> entry, FluidStack value) {
return value.write(new CompoundTag());
}
diff --git a/runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/ItemEntryDefinition.java b/runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/ItemEntryDefinition.java
index 7beab03b9..1667058fa 100644
--- a/runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/ItemEntryDefinition.java
+++ b/runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/ItemEntryDefinition.java
@@ -170,6 +170,11 @@ public class ItemEntryDefinition implements EntryDefinition<ItemStack>, EntrySer
}
@Override
+ public boolean acceptsNull() {
+ return false;
+ }
+
+ @Override
public CompoundTag save(EntryStack<ItemStack> entry, ItemStack value) {
return value.save(new CompoundTag());
}