aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/mammoth/internal/util/Iterables.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/zwobble/mammoth/internal/util/Iterables.java')
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/util/Iterables.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/util/Iterables.java b/src/main/java/org/zwobble/mammoth/internal/util/Iterables.java
index 04a987a..88e906e 100644
--- a/src/main/java/org/zwobble/mammoth/internal/util/Iterables.java
+++ b/src/main/java/org/zwobble/mammoth/internal/util/Iterables.java
@@ -138,4 +138,15 @@ public class Iterables {
public static <T> Stream<T> stream(Iterable<T> iterable) {
return StreamSupport.stream(iterable.spliterator(), false);
}
+
+ public static <T> int findIndex(Iterable<T> iterable, Predicate<T> predicate) {
+ int index = 0;
+ for (T element : iterable) {
+ if (predicate.test(element)) {
+ return index;
+ }
+ index++;
+ }
+ return -1;
+ }
}