re-inline Goal.Flag iteration

This commit is contained in:
Jason Penilla 2021-11-30 00:36:30 -08:00 committed by MiniDigger | Martin
parent d8d7f52324
commit 754dfd1eb2
3 changed files with 23 additions and 65 deletions

View file

@ -734,21 +734,6 @@ index 0000000000000000000000000000000000000000..0d30e0b21b9024df939a9d070bd4a99b
+ return types;
+ }
+}
diff --git a/src/main/java/com/destroystokyo/paper/util/set/OptimizedSmallEnumSet.java b/src/main/java/com/destroystokyo/paper/util/set/OptimizedSmallEnumSet.java
index 66f6423d2732d23809fe86418537e35d40d24373..964f68fc3cbdb658c13d5d0213abf2ee3ce9557d 100644
--- a/src/main/java/com/destroystokyo/paper/util/set/OptimizedSmallEnumSet.java
+++ b/src/main/java/com/destroystokyo/paper/util/set/OptimizedSmallEnumSet.java
@@ -67,6 +67,10 @@ public final class OptimizedSmallEnumSet<E extends Enum<E>> {
return (other.backingSet & this.backingSet) != 0;
}
+ public boolean hasElement(final E element) {
+ return (this.backingSet & (1L << element.ordinal())) != 0;
+ }
+
public void forEach(final E[] values, final Consumer<E> action) {
long iterator = this.getBackingSet();
int wrappedGoalSize = this.size();
diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/Goal.java b/src/main/java/net/minecraft/world/entity/ai/goal/Goal.java
index 4379b9948f1eecfe6fd7dea98e298ad5f761019a..3f081183521603824430709886a9cc313c28e7cb 100644
--- a/src/main/java/net/minecraft/world/entity/ai/goal/Goal.java