From 4e1a13330028b57818ece6741e029ebdbc9c7572 Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Sat, 7 Apr 2018 15:20:50 -0400 Subject: Documentation --- .../bjc/utils/parserutils/TokenTransformer.java | 31 +++++++++++++++++----- 1 file changed, 24 insertions(+), 7 deletions(-) (limited to 'base/src/main/java/bjc/utils/parserutils/TokenTransformer.java') diff --git a/base/src/main/java/bjc/utils/parserutils/TokenTransformer.java b/base/src/main/java/bjc/utils/parserutils/TokenTransformer.java index 72913db..f0221be 100644 --- a/base/src/main/java/bjc/utils/parserutils/TokenTransformer.java +++ b/base/src/main/java/bjc/utils/parserutils/TokenTransformer.java @@ -21,8 +21,10 @@ final class TokenTransformer implements Consumer { * Handle operators */ private final class OperatorHandler implements UnaryOperator> { + /* The handled element. */ private final TokenType element; + /* Create a new operator handler. */ public OperatorHandler(final TokenType element) { this.element = element; } @@ -33,9 +35,8 @@ final class TokenTransformer implements Consumer { * Replace the current AST with the result of handling * an operator */ - return new ConstructorState<>(pair.bindLeft(queuedASTs -> { - return handleOperator(queuedASTs); - })); + return new ConstructorState<>(pair.bindLeft( + queuedASTs -> handleOperator(queuedASTs))); } private ConstructorState handleOperator(final Deque> queuedASTs) { @@ -66,7 +67,7 @@ final class TokenTransformer implements Consumer { * Grab the two operands */ final ITree right = queuedASTs.pop(); - final ITree left = queuedASTs.pop(); + final ITree left = queuedASTs.pop(); /* * Create a new AST @@ -86,15 +87,31 @@ final class TokenTransformer implements Consumer { } } + /* The initial state of the transformer. */ private final IHolder> initialState; + /* The predicate tot use to detect operators. */ private final Predicate operatorPredicate; - private final Predicate isSpecialOperator; - private final Function> handleSpecialOperator; + /* The predicate for detecting special operators. */ + private final Predicate isSpecialOperator; + /* The function for handling special operators. */ + private final Function> handleSpecialOperator; - /* + /** * Create a new transformer + * + * @param initialState + * The initial state of the transformer. + * + * @param operatorPredicate + * The predicate to use to identify operators. + * + * @param isSpecialOperator + * The predicate used to identify special operators. + * + * @param handleSpecialOperator + * The function used for handling special operators. */ public TokenTransformer(final IHolder> initialState, final Predicate operatorPredicate, final Predicate isSpecialOperator, -- cgit v1.2.3