summaryrefslogtreecommitdiff
path: root/BJC-Utils2/src/main/java/bjc/utils/parserutils/TokenTransformer.java
diff options
context:
space:
mode:
authorbculkin2442 <bjculkin@mix.wvu.edu>2016-04-18 19:56:32 -0400
committerbculkin2442 <bjculkin@mix.wvu.edu>2016-04-18 19:56:32 -0400
commitb4f5f98c0aa7fc892e96771ff2df729e61c21f74 (patch)
tree09820cc267577c295be7bf33dc5deabf662cb37c /BJC-Utils2/src/main/java/bjc/utils/parserutils/TokenTransformer.java
parent7c12fd8fe169944152ca73f0da4e8fe8e280f648 (diff)
Minor code changes
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/parserutils/TokenTransformer.java')
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/parserutils/TokenTransformer.java14
1 files changed, 8 insertions, 6 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/parserutils/TokenTransformer.java b/BJC-Utils2/src/main/java/bjc/utils/parserutils/TokenTransformer.java
index 4db5e76..c88763f 100644
--- a/BJC-Utils2/src/main/java/bjc/utils/parserutils/TokenTransformer.java
+++ b/BJC-Utils2/src/main/java/bjc/utils/parserutils/TokenTransformer.java
@@ -11,6 +11,7 @@ import bjc.utils.data.IPair;
import bjc.utils.data.Pair;
import bjc.utils.funcdata.ITree;
import bjc.utils.funcdata.Tree;
+import bjc.utils.funcutils.StringUtils;
final class TokenTransformer<T> implements Consumer<T> {
private final class OperatorHandler
@@ -34,7 +35,8 @@ final class TokenTransformer<T> implements Consumer<T> {
ITree<T> newAST;
if (isSpecialOperator.test(element)) {
- newAST = handleSpecialOperator.apply(queuedASTs);
+ newAST = handleSpecialOperator.apply(element)
+ .apply(queuedASTs);
} else {
if (queuedASTs.size() < 2) {
throw new IllegalStateException(
@@ -56,15 +58,15 @@ final class TokenTransformer<T> implements Consumer<T> {
}
}
- private IHolder<IPair<Deque<ITree<T>>, ITree<T>>> initialState;
- private Predicate<T> operatorPredicate;
- private Predicate<T> isSpecialOperator;
- private Function<Deque<ITree<T>>, ITree<T>> handleSpecialOperator;
+ private IHolder<IPair<Deque<ITree<T>>, ITree<T>>> initialState;
+ private Predicate<T> operatorPredicate;
+ private Predicate<T> isSpecialOperator;
+ private Function<T, Function<Deque<ITree<T>>, ITree<T>>> handleSpecialOperator;
public TokenTransformer(
IHolder<IPair<Deque<ITree<T>>, ITree<T>>> initialState,
Predicate<T> operatorPredicate, Predicate<T> isSpecialOperator,
- Function<Deque<ITree<T>>, ITree<T>> handleSpecialOperator) {
+ Function<T, Function<Deque<ITree<T>>, ITree<T>>> handleSpecialOperator) {
this.initialState = initialState;
this.operatorPredicate = operatorPredicate;
this.isSpecialOperator = isSpecialOperator;