diff options
| author | shedaniel <daniel@shedaniel.me> | 2022-01-27 13:08:31 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2022-01-27 13:08:57 +0800 |
| commit | ef23b11140085651287ce35deca87723daf34e78 (patch) | |
| tree | 4e90b017debb7d90d9a760b6747639e42aababdf /runtime/src/main/java/me | |
| parent | bf6c426cbdcd89a8dd6dec43a07444f25fa6525f (diff) | |
| download | RoughlyEnoughItems-ef23b11140085651287ce35deca87723daf34e78.tar.gz RoughlyEnoughItems-ef23b11140085651287ce35deca87723daf34e78.tar.bz2 RoughlyEnoughItems-ef23b11140085651287ce35deca87723daf34e78.zip | |
Fix #738
Diffstat (limited to 'runtime/src/main/java/me')
| -rw-r--r-- | runtime/src/main/java/me/shedaniel/rei/impl/client/view/ViewsImpl.java | 27 |
1 files changed, 5 insertions, 22 deletions
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/view/ViewsImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/view/ViewsImpl.java index fcfc17807..c07a29072 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/view/ViewsImpl.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/view/ViewsImpl.java @@ -24,7 +24,6 @@ package me.shedaniel.rei.impl.client.view; import com.google.common.base.Stopwatch; -import com.google.common.collect.AbstractIterator; import com.google.common.collect.Iterables; import com.google.common.collect.Maps; import com.google.common.collect.Sets; @@ -107,13 +106,13 @@ public class ViewsImpl implements Views { if (!recipesForStacks.isEmpty()) { if (isRecipesFor(recipesForStacks, display)) { set.add(display); - break; + continue; } } if (!usagesForStacks.isEmpty()) { if (isUsagesFor(usagesForStacks, display)) { set.add(display); - break; + continue; } } } @@ -243,7 +242,7 @@ public class ViewsImpl implements Views { } private static boolean checkUsages(List<EntryStack<?>> stacks, Display display, List<EntryIngredient> entries) { - for (List<? extends EntryStack<?>> results : entries) { + for (EntryIngredient results : entries) { for (EntryStack<?> otherEntry : results) { for (EntryStack<?> recipesFor : stacks) { if (EntryStacks.equalsFuzzy(otherEntry, recipesFor)) { @@ -270,24 +269,8 @@ public class ViewsImpl implements Views { } } - return Iterables.concat(successfulDisplays, applicableDisplays, () -> new AbstractIterator<Display>() { - Iterator<Display> iterator = displays.iterator(); - - @Override - protected Display computeNext() { - while (iterator.hasNext()) { - Display next = iterator.next(); - - if (successfulDisplays.contains(next) || applicableDisplays.contains(next)) { - continue; - } - - return next; - } - - return endOfData(); - } - }); + return Iterables.concat(successfulDisplays, applicableDisplays, + Iterables.filter(displays, display -> !successfulDisplays.contains(display) && !applicableDisplays.contains(display))); } private static <T extends Display> void generateLiveDisplays(DisplayRegistry displayRegistry, DynamicDisplayGenerator<T> generator, ViewSearchBuilder builder, Consumer<T> displayConsumer) { |
