diff options
| author | shedaniel <daniel@shedaniel.me> | 2021-06-01 02:28:36 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2021-06-01 02:28:36 +0800 |
| commit | 645c54d0611b8f44a6851b06c2cc74c78d824331 (patch) | |
| tree | 62cd0827f255954b54c125040b090d81b42445e1 | |
| parent | 82e9655e3786f58c32e2b6584732bb40f9508c1c (diff) | |
| download | RoughlyEnoughItems-645c54d0611b8f44a6851b06c2cc74c78d824331.tar.gz RoughlyEnoughItems-645c54d0611b8f44a6851b06c2cc74c78d824331.tar.bz2 RoughlyEnoughItems-645c54d0611b8f44a6851b06c2cc74c78d824331.zip | |
cast().getValue() -> castValue()
7 files changed, 14 insertions, 7 deletions
diff --git a/api/src/main/java/me/shedaniel/rei/api/common/entry/EntryStack.java b/api/src/main/java/me/shedaniel/rei/api/common/entry/EntryStack.java index 926ce3265..c9810211d 100644 --- a/api/src/main/java/me/shedaniel/rei/api/common/entry/EntryStack.java +++ b/api/src/main/java/me/shedaniel/rei/api/common/entry/EntryStack.java @@ -133,6 +133,10 @@ public interface EntryStack<T> extends TextRepresentable, Renderer { T getValue(); + default <R> R castValue() { + return (R) getValue(); + } + <R> EntryStack<T> setting(Settings<R> settings, R value); <R> EntryStack<T> removeSetting(Settings<R> settings); diff --git a/api/src/main/java/me/shedaniel/rei/api/common/transfer/info/MenuInfo.java b/api/src/main/java/me/shedaniel/rei/api/common/transfer/info/MenuInfo.java index 283a2078f..bf7927c2e 100644 --- a/api/src/main/java/me/shedaniel/rei/api/common/transfer/info/MenuInfo.java +++ b/api/src/main/java/me/shedaniel/rei/api/common/transfer/info/MenuInfo.java @@ -26,6 +26,7 @@ package me.shedaniel.rei.api.common.transfer.info; import me.shedaniel.rei.api.common.category.CategoryIdentifier; import me.shedaniel.rei.api.common.display.Display; import me.shedaniel.rei.api.common.display.DisplaySerializerRegistry; +import me.shedaniel.rei.api.common.entry.EntryStack; import me.shedaniel.rei.api.common.entry.type.VanillaEntryTypes; import me.shedaniel.rei.api.common.transfer.RecipeFinder; import me.shedaniel.rei.api.common.transfer.RecipeFinderPopulator; @@ -120,7 +121,8 @@ public interface MenuInfo<T extends AbstractContainerMenu, D extends Display> ex default List<List<ItemStack>> getInputs(MenuInfoContext<T, ?, D> context) { if (context.getDisplay() == null) return Collections.emptyList(); return CollectionUtils.map(context.getDisplay().getInputEntries(), inputEntry -> - CollectionUtils.filterAndMap(inputEntry, stack -> stack.getType() == VanillaEntryTypes.ITEM, stack -> stack.<ItemStack>cast().getValue())); + CollectionUtils.<EntryStack<?>, ItemStack>filterAndMap(inputEntry, + stack -> stack.getType() == VanillaEntryTypes.ITEM, EntryStack::castValue)); } /** diff --git a/api/src/main/java/me/shedaniel/rei/api/common/util/EntryStacks.java b/api/src/main/java/me/shedaniel/rei/api/common/util/EntryStacks.java index b100bcba7..02459b8e8 100644 --- a/api/src/main/java/me/shedaniel/rei/api/common/util/EntryStacks.java +++ b/api/src/main/java/me/shedaniel/rei/api/common/util/EntryStacks.java @@ -81,7 +81,7 @@ public final class EntryStacks { EntryType<A> leftType = left.getType(); EntryType<B> rightType = right.getType(); if (leftType == rightType) { - return left.getDefinition().equals(left.getValue(), right.<A>cast().getValue(), context); + return left.getDefinition().equals(left.getValue(), right.<A>castValue(), context); } for (EntryTypeBridge<A, B> bridge : EntryTypeRegistry.getInstance().getBridgesFor(leftType, rightType)) { InteractionResultHolder<Stream<EntryStack<B>>> holder = bridge.bridge(left); diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java index 94534142c..4a229a3c2 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java @@ -228,7 +228,7 @@ public class DefaultClientPlugin implements REIClientPlugin, BuiltinClientPlugin } EntryIngredient arrowStack = EntryIngredient.of(EntryStacks.of(Items.ARROW)); ReferenceSet<Potion> registeredPotions = new ReferenceOpenHashSet<>(); - EntryRegistry.getInstance().getEntryStacks().filter(entry -> entry.getValueType() == ItemStack.class && entry.<ItemStack>cast().getValue().getItem() == Items.LINGERING_POTION).forEach(entry -> { + EntryRegistry.getInstance().getEntryStacks().filter(entry -> entry.getValueType() == ItemStack.class && entry.<ItemStack>castValue().getItem() == Items.LINGERING_POTION).forEach(entry -> { ItemStack itemStack = (ItemStack) entry.getValue(); Potion potion = PotionUtils.getPotion(itemStack); if (registeredPotions.add(potion)) { diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java index ea442b696..10516c2b5 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java @@ -27,6 +27,7 @@ import me.shedaniel.rei.api.common.category.CategoryIdentifier; import me.shedaniel.rei.api.common.display.SimpleGridMenuDisplay; import me.shedaniel.rei.api.common.display.basic.BasicDisplay; import me.shedaniel.rei.api.common.entry.EntryIngredient; +import me.shedaniel.rei.api.common.entry.EntryStack; import me.shedaniel.rei.api.common.entry.type.VanillaEntryTypes; import me.shedaniel.rei.api.common.transfer.info.simple.SimpleGridMenuInfo; import me.shedaniel.rei.api.common.util.CollectionUtils; @@ -69,8 +70,8 @@ public abstract class DefaultCraftingDisplay<C extends Recipe<?>> extends BasicD list.add(Collections.emptyList()); } for (int i = 0; i < getInputEntries().size(); i++) { - List<ItemStack> stacks = CollectionUtils.filterAndMap(getInputEntries().get(i), stack -> stack.getType() == VanillaEntryTypes.ITEM, - stack -> stack.<ItemStack>cast().getValue()); + List<ItemStack> stacks = CollectionUtils.<EntryStack<?>, ItemStack>filterAndMap(getInputEntries().get(i), stack -> stack.getType() == VanillaEntryTypes.ITEM, + EntryStack::castValue); list.set(getSlotWithSize(this, i, menuInfo.getCraftingWidth(container)), stacks); } return list; diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryListEntryWidget.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryListEntryWidget.java index c44622f1a..143d93662 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryListEntryWidget.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryListEntryWidget.java @@ -85,7 +85,7 @@ public abstract class EntryListEntryWidget extends EntryWidget { } } if (entry.getValueType() == ItemStack.class) - entry.<ItemStack>cast().getValue().setCount(button != 1 && !Screen.hasShiftDown() ? 1 : ((ItemStack) entry.getValue()).getMaxStackSize()); + entry.<ItemStack>castValue().setCount(button != 1 && !Screen.hasShiftDown() ? 1 : entry.<ItemStack>castValue().getMaxStackSize()); return ClientHelper.getInstance().tryCheatingEntry(entry); } diff --git a/runtime/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientRuntimePlugin.java b/runtime/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientRuntimePlugin.java index b645040a1..ee03470e0 100644 --- a/runtime/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientRuntimePlugin.java +++ b/runtime/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientRuntimePlugin.java @@ -231,7 +231,7 @@ public class DefaultClientRuntimePlugin implements REIClientPlugin { } } if (entry.getType() == VanillaEntryTypes.ITEM) - entry.<ItemStack>cast().getValue().setCount(button != 1 && !Screen.hasShiftDown() ? 1 : ((ItemStack) entry.getValue()).getMaxStackSize()); + entry.<ItemStack>castValue().setCount(button != 1 && !Screen.hasShiftDown() ? 1 : entry.<ItemStack>castValue().getMaxStackSize()); return ClientHelper.getInstance().tryCheatingEntry(entry); } |
