diff options
Diffstat (limited to 'runtime/src/main/java/me/shedaniel/rei/impl/common')
6 files changed, 69 insertions, 25 deletions
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/DeferringEntryTypeProviderImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/DeferringEntryTypeProviderImpl.java index d179676d8..f953f1696 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/DeferringEntryTypeProviderImpl.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/DeferringEntryTypeProviderImpl.java @@ -24,7 +24,7 @@ package me.shedaniel.rei.impl.common.entry; import me.shedaniel.architectury.platform.Platform; -import dev.architectury.utils.Env; +import me.shedaniel.architectury.utils.Env; import me.shedaniel.rei.api.client.gui.Renderer; import me.shedaniel.rei.api.common.entry.type.BuiltinEntryTypes; import me.shedaniel.rei.api.common.entry.type.EntryDefinition; diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/EntryRegistryImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/EntryRegistryImpl.java index f555a44c3..30cf495f8 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/EntryRegistryImpl.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/EntryRegistryImpl.java @@ -23,6 +23,7 @@ package me.shedaniel.rei.impl.common.entry.type; +import com.google.common.collect.ImmutableSet; import com.google.common.collect.Lists; import it.unimi.dsi.fastutil.longs.*; import me.shedaniel.rei.api.client.REIRuntime; @@ -103,7 +104,7 @@ public class EntryRegistryImpl implements EntryRegistry { @Override public <Cache> void markFilteringRuleDirty(FilteringRule<Cache> cacheFilteringRule, Collection<EntryStack<?>> stacks, @Nullable LongCollection hashes) { - this.filteredList.refreshFilteringFor(Set.of(cacheFilteringRule), stacks, hashes); + this.filteredList.refreshFilteringFor(ImmutableSet.of(cacheFilteringRule), stacks, hashes); } @Override diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/EntryRegistryListImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/EntryRegistryListImpl.java index 7d97bf179..36014dbe1 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/EntryRegistryListImpl.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/EntryRegistryListImpl.java @@ -23,6 +23,7 @@ package me.shedaniel.rei.impl.common.entry.type; +import it.unimi.dsi.fastutil.Hash; import it.unimi.dsi.fastutil.longs.LongList; import me.shedaniel.rei.api.common.entry.EntryStack; import me.shedaniel.rei.impl.common.util.HashedEntryStackWrapper; @@ -87,7 +88,7 @@ public class EntryRegistryListImpl implements EntryRegistryList { @Override public void addAll(List<EntryStack<?>> stacks, LongList hashes) { - hashedList.addAll(new AbstractList<>() { + hashedList.addAll(new AbstractList<HashedEntryStackWrapper>() { @Override public HashedEntryStackWrapper get(int index) { return new HashedEntryStackWrapper(stacks.get(index), hashes.getLong(index)); @@ -102,7 +103,7 @@ public class EntryRegistryListImpl implements EntryRegistryList { @Override public void addAll(int index, List<EntryStack<?>> stacks, LongList hashes) { - hashedList.addAll(index, new AbstractList<>() { + hashedList.addAll(index, new AbstractList<HashedEntryStackWrapper>() { @Override public HashedEntryStackWrapper get(int index) { return new HashedEntryStackWrapper(stacks.get(index), hashes.getLong(index)); @@ -135,7 +136,7 @@ public class EntryRegistryListImpl implements EntryRegistryList { } private static List<EntryStack<?>> createMappedList(List<HashedEntryStackWrapper> hashedList) { - return new AbstractList<>() { + return new AbstractList<EntryStack<?>>() { @Override public EntryStack<?> get(int index) { return hashedList.get(index).unwrap(); @@ -177,7 +178,8 @@ public class EntryRegistryListImpl implements EntryRegistryList { @Override public int indexOf(Object o) { - if (o instanceof EntryStack<?> stack) { + if (o instanceof EntryStack<?>) { + EntryStack<?> stack = (EntryStack<?>) o; return hashedList.indexOf(new HashedEntryStackWrapper(stack)); } else { return -1; @@ -186,7 +188,8 @@ public class EntryRegistryListImpl implements EntryRegistryList { @Override public int lastIndexOf(Object o) { - if (o instanceof EntryStack<?> stack) { + if (o instanceof EntryStack<?>) { + EntryStack<?> stack = (EntryStack<?>) o; return hashedList.lastIndexOf(new HashedEntryStackWrapper(stack)); } else { return -1; @@ -195,7 +198,8 @@ public class EntryRegistryListImpl implements EntryRegistryList { @Override public boolean contains(Object o) { - if (o instanceof EntryStack<?> stack) { + if (o instanceof EntryStack<?>) { + EntryStack<?> stack = (EntryStack<?>) o; return hashedList.contains(new HashedEntryStackWrapper(stack)); } else { return false; diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/PreFilteredEntryList.java b/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/PreFilteredEntryList.java index 03a4b47c3..51b5e9a94 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/PreFilteredEntryList.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/PreFilteredEntryList.java @@ -25,6 +25,7 @@ package me.shedaniel.rei.impl.common.entry.type; import com.google.common.base.Stopwatch; import com.google.common.collect.AbstractIterator; +import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterators; import com.google.common.collect.Lists; import it.unimi.dsi.fastutil.longs.*; @@ -61,7 +62,7 @@ public class PreFilteredEntryList implements FilteredEntryList { @Override public void addEntryAfter(@Nullable EntryStack<?> afterEntry, EntryStack<?> stack, long stackHashExact) { if (!registry.isReloading()) { - refreshFilteringFor(null, List.of(stack), LongList.of(stackHashExact)); + refreshFilteringFor(null, ImmutableList.of(stack), LongLists.singleton(stackHashExact)); } } @@ -75,7 +76,7 @@ public class PreFilteredEntryList implements FilteredEntryList { @Override public void removeEntry(EntryStack<?> stack, long hashExact) { if (!registry.isReloading()) { - removeFilteringFor(List.of(stack), LongList.of(hashExact)); + removeFilteringFor(ImmutableList.of(stack), LongLists.singleton(hashExact)); } } @@ -154,7 +155,7 @@ public class PreFilteredEntryList implements FilteredEntryList { shown.removeAll(hashes); mod++; } - Map<FilteringContextType, Set<HashedEntryStackWrapper>> map = FilteringLogic.hidden(List.of(rule), log, true, stacks); + Map<FilteringContextType, Set<HashedEntryStackWrapper>> map = FilteringLogic.hidden(ImmutableList.of(rule), log, true, stacks); Set<HashedEntryStackWrapper> hiddenWrappers = map.get(FilteringContextType.HIDDEN); Set<HashedEntryStackWrapper> shownWrappers = map.get(FilteringContextType.SHOWN); for (HashedEntryStackWrapper stack : hiddenWrappers) { @@ -256,7 +257,7 @@ public class PreFilteredEntryList implements FilteredEntryList { } Iterator<HashedEntryStackWrapper> iterator = list.collectHashed().iterator(); - return new AbstractIterator<>() { + return new AbstractIterator<HashedEntryStackWrapper>() { @Nullable @Override protected HashedEntryStackWrapper computeNext() { @@ -299,9 +300,47 @@ public class PreFilteredEntryList implements FilteredEntryList { return !stack.isEmpty() && cached.getOrDefault(hashExact, true); } - private record DataPair(LongSet hidden, LongSet shown) { + private static final class DataPair { + private final LongSet hidden; + private final LongSet shown; + + private DataPair(LongSet hidden, LongSet shown) { + this.hidden = hidden; + this.shown = shown; + } + private DataPair() { - this(new LongOpenHashSet(), new LongOpenHashSet()); + this(new LongOpenHashSet(), new LongOpenHashSet()); + } + + public LongSet hidden() { + return hidden; } + + public LongSet shown() { + return shown; + } + + @Override + public boolean equals(Object obj) { + if (obj == this) return true; + if (obj == null || obj.getClass() != this.getClass()) return false; + DataPair that = (DataPair) obj; + return Objects.equals(this.hidden, that.hidden) && + Objects.equals(this.shown, that.shown); + } + + @Override + public int hashCode() { + return Objects.hash(hidden, shown); + } + + @Override + public String toString() { + return "DataPair[" + + "hidden=" + hidden + ", " + + "shown=" + shown + ']'; + } + } } diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/common/plugins/PluginManagerImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/common/plugins/PluginManagerImpl.java index 9fbfcb903..602cb728e 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/common/plugins/PluginManagerImpl.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/common/plugins/PluginManagerImpl.java @@ -236,13 +236,13 @@ public class PluginManagerImpl<P extends REIPlugin<?>> implements PluginManager< Collections.reverse(plugins); InternalLogger.getInstance().debug("========================================"); InternalLogger.getInstance().debug(name(pluginClass) + " starting pre-reload for " + stage + "."); - InternalLogger.getInstance().debug("Reloadables (%d):".formatted(reloadables.size())); + InternalLogger.getInstance().debug("Reloadables (%d):", reloadables.size()); for (Reloadable<P> reloadable : reloadables) { InternalLogger.getInstance().debug(" - " + name(reloadable.getClass())); } - InternalLogger.getInstance().debug("Plugins (%d):".formatted(plugins.size())); + InternalLogger.getInstance().debug("Plugins (%d):", plugins.size()); for (PluginWrapper<P> plugin : plugins) { - InternalLogger.getInstance().debug(" - (%.2f) ".formatted(plugin.getPriority()) + plugin.getPluginProviderName()); + InternalLogger.getInstance().debug(" - (%.2f) %s", plugin.getPriority(), plugin.getPluginProviderName()); } InternalLogger.getInstance().debug("========================================"); this.forcedMainThread = false; @@ -276,13 +276,13 @@ public class PluginManagerImpl<P extends REIPlugin<?>> implements PluginManager< Collections.reverse(plugins); InternalLogger.getInstance().debug("========================================"); InternalLogger.getInstance().debug(name(pluginClass) + " starting post-reload for " + stage + "."); - InternalLogger.getInstance().debug("Reloadables (%d):".formatted(reloadables.size())); + InternalLogger.getInstance().debug("Reloadables (%d):", reloadables.size()); for (Reloadable<P> reloadable : reloadables) { InternalLogger.getInstance().debug(" - " + name(reloadable.getClass())); } - InternalLogger.getInstance().debug("Plugins (%d):".formatted(plugins.size())); + InternalLogger.getInstance().debug("Plugins (%d):", plugins.size()); for (PluginWrapper<P> plugin : plugins) { - InternalLogger.getInstance().debug(" - (%.2f) ".formatted(plugin.getPriority()) + plugin.getPluginProviderName()); + InternalLogger.getInstance().debug(" - (%.2f) %s", plugin.getPriority(), plugin.getPluginProviderName()); } InternalLogger.getInstance().debug("========================================"); this.reloadStopwatch.start(); @@ -329,16 +329,16 @@ public class PluginManagerImpl<P extends REIPlugin<?>> implements PluginManager< Collections.reverse(plugins); // Pre Reload - String line = new String[]{"*", "=", "#", "@", "%", "~", "O", "-", "+"}[new Random().nextInt(9)].repeat(40); + String line = new String(new char[40]).replace("\0", new String[]{"*", "=", "#", "@", "%", "~", "O", "-", "+"}[new Random().nextInt(9)]); InternalLogger.getInstance().info(line); InternalLogger.getInstance().info(name(pluginClass) + " starting main-reload for " + stage + "."); - InternalLogger.getInstance().debug("Reloadables (%d):".formatted(reloadables.size())); + InternalLogger.getInstance().debug("Reloadables (%d):", reloadables.size()); for (Reloadable<P> reloadable : reloadables) { InternalLogger.getInstance().debug(" - " + name(reloadable.getClass())); } - InternalLogger.getInstance().info("Plugins (%d):".formatted(plugins.size())); + InternalLogger.getInstance().info("Plugins (%d):", plugins.size()); for (PluginWrapper<P> plugin : plugins) { - InternalLogger.getInstance().info(" - (%.2f) ".formatted(plugin.getPriority()) + plugin.getPluginProviderName()); + InternalLogger.getInstance().info(" - (%.2f) %S",plugin.getPriority(), plugin.getPluginProviderName()); } InternalLogger.getInstance().info(line); diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/common/transfer/MenuInfoRegistryImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/common/transfer/MenuInfoRegistryImpl.java index 2d950b77d..b0a94e3b0 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/common/transfer/MenuInfoRegistryImpl.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/common/transfer/MenuInfoRegistryImpl.java @@ -59,7 +59,7 @@ public class MenuInfoRegistryImpl implements MenuInfoRegistry { @Override public <D extends Display> void registerGeneric(Predicate<CategoryIdentifier<?>> categoryPredicate, MenuInfoProvider<?, D> menuInfo) { - mapGeneric.computeIfAbsent(new Predicate<>() { + mapGeneric.computeIfAbsent(new Predicate<CategoryIdentifier<?>>() { @Override public boolean test(CategoryIdentifier<?> categoryIdentifier) { return categoryPredicate.test(categoryIdentifier); |
