summaryrefslogtreecommitdiff
path: root/BJC-Utils2/src/main/java/bjc/utils/parserutils/TreeConstructor.java
diff options
context:
space:
mode:
authorbculkin2442 <bjculkin@mix.wvu.edu>2016-04-13 23:11:36 -0400
committerbculkin2442 <bjculkin@mix.wvu.edu>2016-04-13 23:11:36 -0400
commit9adff31e86603493c2a245e1e803d951675d5e00 (patch)
tree7374a6e4657333881db5621fbf23e18617470329 /BJC-Utils2/src/main/java/bjc/utils/parserutils/TreeConstructor.java
parentba07771f8333f1b098ab8a9ec9fec886b72b9cc0 (diff)
Implemented new tree abstraction
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/parserutils/TreeConstructor.java')
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/parserutils/TreeConstructor.java15
1 files changed, 8 insertions, 7 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/parserutils/TreeConstructor.java b/BJC-Utils2/src/main/java/bjc/utils/parserutils/TreeConstructor.java
index 3252351..088430b 100644
--- a/BJC-Utils2/src/main/java/bjc/utils/parserutils/TreeConstructor.java
+++ b/BJC-Utils2/src/main/java/bjc/utils/parserutils/TreeConstructor.java
@@ -5,11 +5,12 @@ import java.util.LinkedList;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Predicate;
+import java.util.function.UnaryOperator;
-import bjc.utils.data.GenHolder;
-import bjc.utils.data.IHolder;
-import bjc.utils.data.IPair;
-import bjc.utils.data.Pair;
+import bjc.utils.data.experimental.IHolder;
+import bjc.utils.data.experimental.IPair;
+import bjc.utils.data.experimental.Identity;
+import bjc.utils.data.experimental.Pair;
import bjc.utils.funcdata.IFunctionalList;
/**
@@ -20,8 +21,8 @@ import bjc.utils.funcdata.IFunctionalList;
*/
public class TreeConstructor {
private static final class TokenTransformer<T> implements Consumer<T> {
- private final class OperatorHandler implements
- Function<IPair<Deque<AST<T>>, AST<T>>, IPair<Deque<AST<T>>, AST<T>>> {
+ private final class OperatorHandler
+ implements UnaryOperator<IPair<Deque<AST<T>>, AST<T>>> {
private T element;
public OperatorHandler(T element) {
@@ -158,7 +159,7 @@ public class TreeConstructor {
"Special operator determiner must not be null");
}
- IHolder<IPair<Deque<AST<T>>, AST<T>>> initialState = new GenHolder<>(
+ IHolder<IPair<Deque<AST<T>>, AST<T>>> initialState = new Identity<>(
new Pair<>(new LinkedList<>(), null));
tokens.forEach(