aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/mammoth/internal/util/Iterables.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-06-04 14:54:27 +0100
committerMichael Williamson <mike@zwobble.org>2016-06-04 14:54:27 +0100
commitdb126d0087963aad877efca233fb1123e9872051 (patch)
tree92abe9ecb381f28002e77a2f9177872c28af4dbf /src/main/java/org/zwobble/mammoth/internal/util/Iterables.java
parentb2c22b0696487284ce1ae9cc908f3f333bcde6d5 (diff)
Return optional element from findChild
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.java9
1 files changed, 9 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 e9246c3..cb2ac36 100644
--- a/src/main/java/org/zwobble/mammoth/internal/util/Iterables.java
+++ b/src/main/java/org/zwobble/mammoth/internal/util/Iterables.java
@@ -26,6 +26,15 @@ public class Iterables {
};
}
+ public static <T> Optional<T> getFirst(Iterable<? extends T> iterable) {
+ Iterator<? extends T> iterator = iterable.iterator();
+ if (iterator.hasNext()) {
+ return Optional.of(iterator.next());
+ } else {
+ return Optional.empty();
+ }
+ }
+
public static <T> T getFirst(Iterable<? extends T> iterable, T defaultValue) {
Iterator<? extends T> iterator = iterable.iterator();
if (iterator.hasNext()) {