aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/mammoth/internal/util
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-03-26 17:14:08 +0000
committerMichael Williamson <mike@zwobble.org>2016-03-26 17:14:08 +0000
commit36befa1f40053899efa58ddeef3aa756dda7cef4 (patch)
tree916a0c473dec4c8f9dc8f05c689ab62708516f57 /src/main/java/org/zwobble/mammoth/internal/util
parent150bedb37750e80d598f7072f55ce7487e257216 (diff)
Remove more usages of Guava
Diffstat (limited to 'src/main/java/org/zwobble/mammoth/internal/util')
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/util/MammothLists.java24
1 files changed, 21 insertions, 3 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/util/MammothLists.java b/src/main/java/org/zwobble/mammoth/internal/util/MammothLists.java
index 09a45c7..7bcc416 100644
--- a/src/main/java/org/zwobble/mammoth/internal/util/MammothLists.java
+++ b/src/main/java/org/zwobble/mammoth/internal/util/MammothLists.java
@@ -2,9 +2,7 @@ package org.zwobble.mammoth.internal.util;
import com.google.common.collect.Ordering;
-import java.util.Collections;
-import java.util.List;
-import java.util.Optional;
+import java.util.*;
import java.util.function.Function;
import java.util.function.Predicate;
import java.util.stream.Collectors;
@@ -80,4 +78,24 @@ public class MammothLists {
public static <T> List<T> skip(List<T> list, int count) {
return list.subList(Math.min(list.size(), count), list.size());
}
+
+ public static <T> Iterable<T> reversed(List<T> list) {
+ return new Iterable<T>() {
+ @Override
+ public Iterator<T> iterator() {
+ ListIterator<T> iterator = list.listIterator(list.size());
+ return new Iterator<T>() {
+ @Override
+ public boolean hasNext() {
+ return iterator.hasPrevious();
+ }
+
+ @Override
+ public T next() {
+ return iterator.previous();
+ }
+ };
+ }
+ };
+ }
}