diff options
Diffstat (limited to 'JPratt/src/main/java/bjc/pratt/blocks/GrammarParseBlock.java')
| -rw-r--r-- | JPratt/src/main/java/bjc/pratt/blocks/GrammarParseBlock.java | 59 |
1 files changed, 30 insertions, 29 deletions
diff --git a/JPratt/src/main/java/bjc/pratt/blocks/GrammarParseBlock.java b/JPratt/src/main/java/bjc/pratt/blocks/GrammarParseBlock.java index 459f83d..b714940 100644 --- a/JPratt/src/main/java/bjc/pratt/blocks/GrammarParseBlock.java +++ b/JPratt/src/main/java/bjc/pratt/blocks/GrammarParseBlock.java @@ -13,40 +13,40 @@ import bjc.utils.parserutils.ParserException; /** * A {@link ParseBlock} that parses an expression from a 'inner' grammar. - * + * * @author bjculkin * * @param <K> * The key type of the outer tokens. - * + * * @param <V> * The value type of the outer tokens. - * + * * @param <C> * The state type of the outer parser. - * + * * @param <K2> * The key type of the inner tokens. - * + * * @param <V2> * The value type of the inner tokens. - * + * * @param <C2> * The state type of the outer parser. */ public class GrammarParseBlock<K, V, C, K2, V2, C2> implements ParseBlock<K, V, C> { - private PrattParser<K2, V2, C2> inner; + private final PrattParser<K2, V2, C2> innr; - private int precedence; - private boolean isStatement; + private final int prcedence; + private final boolean isStatemnt; - private Function<TokenStream<K, V>, TokenStream<K2, V2>> tokenTransform; - private Isomorphism<C, C2> stateTransform; - private Function<ITree<Token<K2, V2>>, ITree<Token<K, V>>> expressionTransform; + private final Function<TokenStream<K, V>, TokenStream<K2, V2>> tkenTransform; + private final Isomorphism<C, C2> stteTransform; + private final Function<ITree<Token<K2, V2>>, ITree<Token<K, V>>> xpressionTransform; /** * Create a new grammar parser block. - * + * * @param inner * @param precedence * @param isStatement @@ -54,28 +54,29 @@ public class GrammarParseBlock<K, V, C, K2, V2, C2> implements ParseBlock<K, V, * @param stateTransform * @param expressionTransform */ - public GrammarParseBlock(PrattParser<K2, V2, C2> inner, int precedence, boolean isStatement, - Function<TokenStream<K, V>, TokenStream<K2, V2>> tokenTransform, - Isomorphism<C, C2> stateTransform, - Function<ITree<Token<K2, V2>>, ITree<Token<K, V>>> expressionTransform) { - this.inner = inner; - this.precedence = precedence; - this.isStatement = isStatement; - this.tokenTransform = tokenTransform; - this.stateTransform = stateTransform; - this.expressionTransform = expressionTransform; + public GrammarParseBlock(final PrattParser<K2, V2, C2> inner, final int precedence, final boolean isStatement, + final Function<TokenStream<K, V>, TokenStream<K2, V2>> tokenTransform, + final Isomorphism<C, C2> stateTransform, + final Function<ITree<Token<K2, V2>>, ITree<Token<K, V>>> expressionTransform) { + innr = inner; + prcedence = precedence; + isStatemnt = isStatement; + tkenTransform = tokenTransform; + stteTransform = stateTransform; + xpressionTransform = expressionTransform; } @Override - public ITree<Token<K, V>> parse(ParserContext<K, V, C> ctx) throws ParserException { - C2 newState = stateTransform.to(ctx.state); + public ITree<Token<K, V>> parse(final ParserContext<K, V, C> ctx) throws ParserException { + final C2 newState = stteTransform.to(ctx.state); - TokenStream<K2, V2> newTokens = tokenTransform.apply(ctx.tokens); + final TokenStream<K2, V2> newTokens = tkenTransform.apply(ctx.tokens); - ITree<Token<K2, V2>> expression = inner.parseExpression(precedence, newTokens, newState, isStatement); + final ITree<Token<K2, V2>> expression = innr.parseExpression(prcedence, newTokens, newState, + isStatemnt); - ctx.state = stateTransform.from(newState); + ctx.state = stteTransform.from(newState); - return expressionTransform.apply(expression); + return xpressionTransform.apply(expression); } }
\ No newline at end of file |
