diff options
| author | shedaniel <daniel@shedaniel.me> | 2022-06-16 23:06:03 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2023-05-29 20:57:19 +0800 |
| commit | 09b4754a4239b12b3aa3da0ee557e1aa804787a5 (patch) | |
| tree | 2a771d6c960b6eab220a2330074abadbb7bb6eee /runtime/src/main/java | |
| parent | f0486dd7451ae2d2efb8fbc72daf8e63b190eaf0 (diff) | |
| download | RoughlyEnoughItems-09b4754a4239b12b3aa3da0ee557e1aa804787a5.tar.gz RoughlyEnoughItems-09b4754a4239b12b3aa3da0ee557e1aa804787a5.tar.bz2 RoughlyEnoughItems-09b4754a4239b12b3aa3da0ee557e1aa804787a5.zip | |
Add acceptsNull() in EntryDefinition
Diffstat (limited to 'runtime/src/main/java')
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()); } |
