From 81f07e5af0a7229f63e6f85c51fdb58c1f107c43 Mon Sep 17 00:00:00 2001 From: Ben Culkin Date: Thu, 3 Dec 2020 19:22:48 -0500 Subject: Adapt to esodata changes --- JPratt/src/main/java/bjc/pratt/PrattParser.java | 6 +++--- JPratt/src/main/java/bjc/pratt/blocks/ChainParseBlock.java | 12 ++++++------ JPratt/src/main/java/bjc/pratt/blocks/GrammarParseBlock.java | 10 +++++----- JPratt/src/main/java/bjc/pratt/blocks/ParseBlock.java | 4 ++-- JPratt/src/main/java/bjc/pratt/blocks/ParseBlocks.java | 4 ++-- .../src/main/java/bjc/pratt/blocks/RepeatingParseBlock.java | 8 ++++---- JPratt/src/main/java/bjc/pratt/blocks/SimpleParseBlock.java | 10 +++++----- .../src/main/java/bjc/pratt/blocks/TriggeredParseBlock.java | 6 +++--- .../main/java/bjc/pratt/commands/AbstractInitialCommand.java | 6 +++--- JPratt/src/main/java/bjc/pratt/commands/BinaryCommand.java | 8 ++++---- JPratt/src/main/java/bjc/pratt/commands/InitialCommand.java | 4 ++-- .../src/main/java/bjc/pratt/commands/NonInitialCommand.java | 4 ++-- .../java/bjc/pratt/commands/impls/BlockInitialCommand.java | 4 ++-- .../src/main/java/bjc/pratt/commands/impls/ChainCommand.java | 12 ++++++------ .../main/java/bjc/pratt/commands/impls/ConstantCommand.java | 8 ++++---- .../java/bjc/pratt/commands/impls/DefaultInitialCommand.java | 4 ++-- .../bjc/pratt/commands/impls/DefaultNonInitialCommand.java | 4 ++-- .../main/java/bjc/pratt/commands/impls/DenestingCommand.java | 4 ++-- .../main/java/bjc/pratt/commands/impls/GroupingCommand.java | 8 ++++---- .../main/java/bjc/pratt/commands/impls/InitialCommands.java | 4 ++-- .../src/main/java/bjc/pratt/commands/impls/LeafCommand.java | 6 +++--- .../java/bjc/pratt/commands/impls/PostCircumfixCommand.java | 8 ++++---- .../main/java/bjc/pratt/commands/impls/PostfixCommand.java | 6 +++--- .../java/bjc/pratt/commands/impls/PreTernaryCommand.java | 12 ++++++------ .../main/java/bjc/pratt/commands/impls/TernaryCommand.java | 10 +++++----- .../bjc/pratt/commands/impls/TransformingInitialCommand.java | 8 ++++---- .../src/main/java/bjc/pratt/commands/impls/UnaryCommand.java | 8 ++++---- 27 files changed, 94 insertions(+), 94 deletions(-) (limited to 'JPratt/src/main/java/bjc') diff --git a/JPratt/src/main/java/bjc/pratt/PrattParser.java b/JPratt/src/main/java/bjc/pratt/PrattParser.java index 1834b7d..9887aa0 100644 --- a/JPratt/src/main/java/bjc/pratt/PrattParser.java +++ b/JPratt/src/main/java/bjc/pratt/PrattParser.java @@ -11,7 +11,7 @@ import bjc.pratt.commands.impls.DefaultInitialCommand; import bjc.pratt.commands.impls.DefaultNonInitialCommand; import bjc.pratt.tokens.Token; import bjc.pratt.tokens.TokenStream; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.utils.funcutils.NumberUtils; import bjc.utils.parserutils.ParserException; @@ -99,7 +99,7 @@ public class PrattParser { * @throws ParserException * If something goes wrong during parsing. */ - public ITree> parseExpression(final int precedence, final TokenStream tokens, final C state, + public Tree> parseExpression(final int precedence, final TokenStream tokens, final C state, final boolean isStatement) throws ParserException { if(precedence < 0) throw new IllegalArgumentException("Precedence must be greater than zero"); @@ -111,7 +111,7 @@ public class PrattParser { final K initKey = initToken.getKey(); InitialCommand nullCommand = getInitialCommand(isStatement, initKey, parserContext); - ITree> ast = nullCommand.denote(initToken, parserContext); + Tree> ast = nullCommand.denote(initToken, parserContext); parserContext.initial = initKey; diff --git a/JPratt/src/main/java/bjc/pratt/blocks/ChainParseBlock.java b/JPratt/src/main/java/bjc/pratt/blocks/ChainParseBlock.java index 434b47f..038b6ea 100644 --- a/JPratt/src/main/java/bjc/pratt/blocks/ChainParseBlock.java +++ b/JPratt/src/main/java/bjc/pratt/blocks/ChainParseBlock.java @@ -4,8 +4,8 @@ import java.util.Set; import bjc.pratt.ParserContext; import bjc.pratt.tokens.Token; -import bjc.data.ITree; import bjc.data.Tree; +import bjc.data.SimpleTree; import bjc.utils.parserutils.ParserException; /** @@ -51,19 +51,19 @@ public class ChainParseBlock implements ParseBlock { } @Override - public ITree> parse(ParserContext ctx) throws ParserException { - ITree> expression = iner.parse(ctx); + public Tree> parse(ParserContext ctx) throws ParserException { + Tree> expression = iner.parse(ctx); Token currentToken = ctx.tokens.current(); if(indicators.contains(currentToken.getKey())) { - ITree> res = new Tree<>(trm); + Tree> res = new SimpleTree<>(trm); res.addChild(expression); while(indicators.contains(currentToken.getKey())) { - res.addChild(new Tree<>(currentToken)); + res.addChild(new SimpleTree<>(currentToken)); ctx.tokens.next(); - ITree> innerExpression = iner.parse(ctx); + Tree> innerExpression = iner.parse(ctx); res.addChild(innerExpression); currentToken = ctx.tokens.current(); diff --git a/JPratt/src/main/java/bjc/pratt/blocks/GrammarParseBlock.java b/JPratt/src/main/java/bjc/pratt/blocks/GrammarParseBlock.java index 0b1fb36..2432d6e 100644 --- a/JPratt/src/main/java/bjc/pratt/blocks/GrammarParseBlock.java +++ b/JPratt/src/main/java/bjc/pratt/blocks/GrammarParseBlock.java @@ -6,7 +6,7 @@ import bjc.pratt.ParserContext; import bjc.pratt.PrattParser; import bjc.pratt.tokens.Token; import bjc.pratt.tokens.TokenStream; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.functypes.*; import bjc.utils.parserutils.ParserException; @@ -41,7 +41,7 @@ public class GrammarParseBlock implements ParseBlock, TokenStream> tkenTransform; private final Isomorphism stteTransform; - private final Function>, ITree>> xpressionTransform; + private final Function>, Tree>> xpressionTransform; /** * Create a new grammar parser block. @@ -56,7 +56,7 @@ public class GrammarParseBlock implements ParseBlock inner, final int precedence, final boolean isStatement, final Function, TokenStream> tokenTransform, final Isomorphism stateTransform, - final Function>, ITree>> expressionTransform) { + final Function>, Tree>> expressionTransform) { innr = inner; prcedence = precedence; isStatemnt = isStatement; @@ -66,12 +66,12 @@ public class GrammarParseBlock implements ParseBlock> parse(final ParserContext ctx) throws ParserException { + public Tree> parse(final ParserContext ctx) throws ParserException { final C2 newState = stteTransform.to(ctx.state); final TokenStream newTokens = tkenTransform.apply(ctx.tokens); - final ITree> expression = innr.parseExpression(prcedence, newTokens, newState, + final Tree> expression = innr.parseExpression(prcedence, newTokens, newState, isStatemnt); ctx.state = stteTransform.from(newState); diff --git a/JPratt/src/main/java/bjc/pratt/blocks/ParseBlock.java b/JPratt/src/main/java/bjc/pratt/blocks/ParseBlock.java index d6cfda9..81ba508 100644 --- a/JPratt/src/main/java/bjc/pratt/blocks/ParseBlock.java +++ b/JPratt/src/main/java/bjc/pratt/blocks/ParseBlock.java @@ -2,7 +2,7 @@ package bjc.pratt.blocks; import bjc.pratt.ParserContext; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.utils.parserutils.ParserException; /** @@ -34,6 +34,6 @@ public interface ParseBlock { * If something goes wrong during parsing, or the block fails * validation. */ - ITree> parse(ParserContext ctx) throws ParserException; + Tree> parse(ParserContext ctx) throws ParserException; } \ No newline at end of file diff --git a/JPratt/src/main/java/bjc/pratt/blocks/ParseBlocks.java b/JPratt/src/main/java/bjc/pratt/blocks/ParseBlocks.java index e0d63f3..96b9737 100644 --- a/JPratt/src/main/java/bjc/pratt/blocks/ParseBlocks.java +++ b/JPratt/src/main/java/bjc/pratt/blocks/ParseBlocks.java @@ -4,7 +4,7 @@ import java.util.function.Predicate; import java.util.function.UnaryOperator; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; /** * Utility class for creating common implementations of {@link ParseBlock} @@ -91,7 +91,7 @@ public class ParseBlocks { * @return A configured simple parse block. */ public static ParseBlock simple(final int precedence, final K terminator, - final Predicate>> validator) { + final Predicate>> validator) { return new SimpleParseBlock<>(precedence, validator, terminator); } } \ No newline at end of file diff --git a/JPratt/src/main/java/bjc/pratt/blocks/RepeatingParseBlock.java b/JPratt/src/main/java/bjc/pratt/blocks/RepeatingParseBlock.java index fafccf1..4c21358 100644 --- a/JPratt/src/main/java/bjc/pratt/blocks/RepeatingParseBlock.java +++ b/JPratt/src/main/java/bjc/pratt/blocks/RepeatingParseBlock.java @@ -4,8 +4,8 @@ import java.util.function.UnaryOperator; import bjc.pratt.ParserContext; import bjc.pratt.tokens.Token; -import bjc.data.ITree; import bjc.data.Tree; +import bjc.data.SimpleTree; import bjc.utils.parserutils.ParserException; /** @@ -72,13 +72,13 @@ public class RepeatingParseBlock implements ParseBlock { } @Override - public ITree> parse(final ParserContext ctx) throws ParserException { - final ITree> ret = new Tree<>(mark); + public Tree> parse(final ParserContext ctx) throws ParserException { + final Tree> ret = new SimpleTree<>(mark); Token tok = ctx.tokens.current(); while(!tok.getKey().equals(term)) { - final ITree> kid = innerBlock.parse(ctx); + final Tree> kid = innerBlock.parse(ctx); ret.addChild(kid); tok = ctx.tokens.current(); diff --git a/JPratt/src/main/java/bjc/pratt/blocks/SimpleParseBlock.java b/JPratt/src/main/java/bjc/pratt/blocks/SimpleParseBlock.java index 6dd925e..83e1d91 100644 --- a/JPratt/src/main/java/bjc/pratt/blocks/SimpleParseBlock.java +++ b/JPratt/src/main/java/bjc/pratt/blocks/SimpleParseBlock.java @@ -4,7 +4,7 @@ import java.util.function.Predicate; import bjc.pratt.ParserContext; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.utils.parserutils.ParserException; /** @@ -26,7 +26,7 @@ public class SimpleParseBlock implements ParseBlock { private final K term; - private final Predicate>> validatr; + private final Predicate>> validatr; /** * Create a new block. @@ -39,7 +39,7 @@ public class SimpleParseBlock implements ParseBlock { * The token type that terminates the block. If this is null, * don't check for a terminator. */ - public SimpleParseBlock(final int precedence, final Predicate>> validator, + public SimpleParseBlock(final int precedence, final Predicate>> validator, final K terminator) { if(precedence < 0) throw new IllegalArgumentException("Precedence must be non-negative"); @@ -49,8 +49,8 @@ public class SimpleParseBlock implements ParseBlock { } @Override - public ITree> parse(final ParserContext ctx) throws ParserException { - final ITree> res = ctx.parse.parseExpression(pow, ctx.tokens, ctx.state, false); + public Tree> parse(final ParserContext ctx) throws ParserException { + final Tree> res = ctx.parse.parseExpression(pow, ctx.tokens, ctx.state, false); if(term != null) { ctx.tokens.expect(term); diff --git a/JPratt/src/main/java/bjc/pratt/blocks/TriggeredParseBlock.java b/JPratt/src/main/java/bjc/pratt/blocks/TriggeredParseBlock.java index f29e3b7..bfe5ab3 100644 --- a/JPratt/src/main/java/bjc/pratt/blocks/TriggeredParseBlock.java +++ b/JPratt/src/main/java/bjc/pratt/blocks/TriggeredParseBlock.java @@ -4,7 +4,7 @@ import java.util.function.UnaryOperator; import bjc.pratt.ParserContext; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.utils.parserutils.ParserException; /** @@ -45,12 +45,12 @@ public class TriggeredParseBlock implements ParseBlock { } @Override - public ITree> parse(final ParserContext ctx) throws ParserException { + public Tree> parse(final ParserContext ctx) throws ParserException { final C newState = onEntr.apply(ctx.state); final ParserContext newCtx = new ParserContext<>(ctx.tokens, ctx.parse, newState); - final ITree> res = sourc.parse(newCtx); + final Tree> res = sourc.parse(newCtx); ctx.state = onExt.apply(newState); diff --git a/JPratt/src/main/java/bjc/pratt/commands/AbstractInitialCommand.java b/JPratt/src/main/java/bjc/pratt/commands/AbstractInitialCommand.java index 43abd96..50e884b 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/AbstractInitialCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/AbstractInitialCommand.java @@ -2,7 +2,7 @@ package bjc.pratt.commands; import bjc.pratt.ParserContext; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.utils.parserutils.ParserException; /** @@ -21,7 +21,7 @@ import bjc.utils.parserutils.ParserException; */ public abstract class AbstractInitialCommand implements InitialCommand { @Override - public ITree> denote(final Token operator, + public Tree> denote(final Token operator, final ParserContext ctx) throws ParserException { return intNullDenotation(operator, ctx); } @@ -39,7 +39,7 @@ public abstract class AbstractInitialCommand implements InitialCommand< * @throws ParserException * If something went wrong while parsing. */ - protected abstract ITree> intNullDenotation(Token operator, + protected abstract Tree> intNullDenotation(Token operator, ParserContext ctx) throws ParserException; } \ No newline at end of file diff --git a/JPratt/src/main/java/bjc/pratt/commands/BinaryCommand.java b/JPratt/src/main/java/bjc/pratt/commands/BinaryCommand.java index 0b790ff..069de78 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/BinaryCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/BinaryCommand.java @@ -2,8 +2,8 @@ package bjc.pratt.commands; import bjc.pratt.ParserContext; import bjc.pratt.tokens.Token; -import bjc.data.ITree; import bjc.data.Tree; +import bjc.data.SimpleTree; import bjc.utils.parserutils.ParserException; /** @@ -39,12 +39,12 @@ public abstract class BinaryCommand extends BinaryPostCommand protected abstract int rightBinding(); @Override - public ITree> denote(final ITree> operand, + public Tree> denote(final Tree> operand, final Token operator, final ParserContext ctx) throws ParserException { - final ITree> opr + final Tree> opr = ctx.parse.parseExpression(rightBinding(), ctx.tokens, ctx.state, false); - return new Tree<>(operator, operand, opr); + return new SimpleTree<>(operator, operand, opr); } } \ No newline at end of file diff --git a/JPratt/src/main/java/bjc/pratt/commands/InitialCommand.java b/JPratt/src/main/java/bjc/pratt/commands/InitialCommand.java index 4a8a93b..3a2a8ff 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/InitialCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/InitialCommand.java @@ -2,7 +2,7 @@ package bjc.pratt.commands; import bjc.pratt.ParserContext; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.utils.parserutils.ParserException; /** @@ -36,5 +36,5 @@ public interface InitialCommand { * @throws ParserException * If something goes wrong during parsing. */ - ITree> denote(Token operator, ParserContext ctx) throws ParserException; + Tree> denote(Token operator, ParserContext ctx) throws ParserException; } diff --git a/JPratt/src/main/java/bjc/pratt/commands/NonInitialCommand.java b/JPratt/src/main/java/bjc/pratt/commands/NonInitialCommand.java index c73874e..12eecb6 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/NonInitialCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/NonInitialCommand.java @@ -2,7 +2,7 @@ package bjc.pratt.commands; import bjc.pratt.ParserContext; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.utils.parserutils.ParserException; /** @@ -37,7 +37,7 @@ public abstract class NonInitialCommand { * @throws ParserException * If something went wrong during parsing. */ - public abstract ITree> denote(ITree> operand, Token operator, + public abstract Tree> denote(Tree> operand, Token operator, ParserContext ctx) throws ParserException; /** diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/BlockInitialCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/BlockInitialCommand.java index b462118..db11484 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/BlockInitialCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/BlockInitialCommand.java @@ -4,7 +4,7 @@ import bjc.pratt.ParserContext; import bjc.pratt.blocks.ParseBlock; import bjc.pratt.commands.AbstractInitialCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.utils.parserutils.ParserException; /** @@ -35,7 +35,7 @@ public class BlockInitialCommand extends AbstractInitialCommand> intNullDenotation(final Token operator, final ParserContext ctx) + protected Tree> intNullDenotation(final Token operator, final ParserContext ctx) throws ParserException { return blck.parse(ctx); } diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/ChainCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/ChainCommand.java index 0397a19..ed7a088 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/ChainCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/ChainCommand.java @@ -5,8 +5,8 @@ import java.util.Set; import bjc.pratt.ParserContext; import bjc.pratt.commands.BinaryPostCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; import bjc.data.Tree; +import bjc.data.SimpleTree; import bjc.utils.parserutils.ParserException; /** @@ -48,21 +48,21 @@ public class ChainCommand extends BinaryPostCommand { } @Override - public ITree> denote(final ITree> operand, final Token operator, + public Tree> denote(final Tree> operand, final Token operator, final ParserContext ctx) throws ParserException { - final ITree> tree = ctx.parse.parseExpression(1 + leftBinding(), ctx.tokens, ctx.state, + final Tree> tree = ctx.parse.parseExpression(1 + leftBinding(), ctx.tokens, ctx.state, false); - final ITree> res = new Tree<>(operator, operand, tree); + final Tree> res = new SimpleTree<>(operator, operand, tree); if(chainWith.contains(ctx.tokens.current().getKey())) { final Token tok = ctx.tokens.current(); ctx.tokens.next(); - final ITree> other = denote(tree, tok, + final Tree> other = denote(tree, tok, new ParserContext<>(ctx.tokens, ctx.parse, ctx.state)); - return new Tree<>(chain, res, other); + return new SimpleTree<>(chain, res, other); } return res; diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/ConstantCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/ConstantCommand.java index dc1b206..409adbb 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/ConstantCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/ConstantCommand.java @@ -3,7 +3,7 @@ package bjc.pratt.commands.impls; import bjc.pratt.ParserContext; import bjc.pratt.commands.InitialCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.utils.parserutils.ParserException; /** @@ -21,7 +21,7 @@ import bjc.utils.parserutils.ParserException; * The state type of the parser. */ public class ConstantCommand implements InitialCommand { - private final ITree> val; + private final Tree> val; /** * Create a new constant. @@ -29,12 +29,12 @@ public class ConstantCommand implements InitialCommand { * @param con * The tree this constant represents. */ - public ConstantCommand(final ITree> con) { + public ConstantCommand(final Tree> con) { val = con; } @Override - public ITree> denote(final Token operator, final ParserContext ctx) + public Tree> denote(final Token operator, final ParserContext ctx) throws ParserException { return val; } diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/DefaultInitialCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/DefaultInitialCommand.java index 6f0e4d5..296cb1c 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/DefaultInitialCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/DefaultInitialCommand.java @@ -3,7 +3,7 @@ package bjc.pratt.commands.impls; import bjc.pratt.ParserContext; import bjc.pratt.commands.InitialCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.utils.parserutils.ParserException; /** @@ -22,7 +22,7 @@ import bjc.utils.parserutils.ParserException; */ public class DefaultInitialCommand implements InitialCommand { @Override - public ITree> denote(final Token operator, final ParserContext ctx) + public Tree> denote(final Token operator, final ParserContext ctx) throws ParserException { throw new ParserException("Unexpected token " + operator); } diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/DefaultNonInitialCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/DefaultNonInitialCommand.java index 77cce6e..797473a 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/DefaultNonInitialCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/DefaultNonInitialCommand.java @@ -3,7 +3,7 @@ package bjc.pratt.commands.impls; import bjc.pratt.ParserContext; import bjc.pratt.commands.NonInitialCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; /** * Default implementation of a non-initial command. @@ -21,7 +21,7 @@ import bjc.data.ITree; */ public class DefaultNonInitialCommand extends NonInitialCommand { @Override - public ITree> denote(final ITree> operand, final Token operator, + public Tree> denote(final Tree> operand, final Token operator, final ParserContext ctx) { throw new UnsupportedOperationException("Default command has no left denotation"); } diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/DenestingCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/DenestingCommand.java index f6a84f6..fbcd35c 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/DenestingCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/DenestingCommand.java @@ -4,7 +4,7 @@ import bjc.pratt.ParserContext; import bjc.pratt.commands.AbstractInitialCommand; import bjc.pratt.commands.InitialCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.utils.parserutils.ParserException; /** @@ -39,7 +39,7 @@ public class DenestingCommand extends AbstractInitialCommand { } @Override - protected ITree> intNullDenotation(final Token operator, final ParserContext ctx) + protected Tree> intNullDenotation(final Token operator, final ParserContext ctx) throws ParserException { return wrapped.denote(operator, ctx).getChild(0); } diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/GroupingCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/GroupingCommand.java index 82f7eaa..1515359 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/GroupingCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/GroupingCommand.java @@ -4,8 +4,8 @@ import bjc.pratt.ParserContext; import bjc.pratt.blocks.ParseBlock; import bjc.pratt.commands.AbstractInitialCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; import bjc.data.Tree; +import bjc.data.SimpleTree; import bjc.utils.parserutils.ParserException; /** @@ -43,10 +43,10 @@ public class GroupingCommand extends AbstractInitialCommand { } @Override - protected ITree> intNullDenotation(final Token operator, final ParserContext ctx) + protected Tree> intNullDenotation(final Token operator, final ParserContext ctx) throws ParserException { - final ITree> opr = innerBlock.parse(ctx); + final Tree> opr = innerBlock.parse(ctx); - return new Tree<>(mark, opr); + return new SimpleTree<>(mark, opr); } } \ No newline at end of file diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/InitialCommands.java b/JPratt/src/main/java/bjc/pratt/commands/impls/InitialCommands.java index dc8009e..8a9108b 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/InitialCommands.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/InitialCommands.java @@ -9,7 +9,7 @@ import java.util.function.UnaryOperator; import bjc.pratt.blocks.ParseBlock; import bjc.pratt.commands.InitialCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; /** * * Contains factory methods for producing common implementations of @@ -121,7 +121,7 @@ public class InitialCommands { * * @return A command implementing the constant. */ - public static InitialCommand constant(final ITree> val) { + public static InitialCommand constant(final Tree> val) { return new ConstantCommand<>(val); } diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/LeafCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/LeafCommand.java index fd535fa..1223641 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/LeafCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/LeafCommand.java @@ -3,8 +3,8 @@ package bjc.pratt.commands.impls; import bjc.pratt.ParserContext; import bjc.pratt.commands.InitialCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; import bjc.data.Tree; +import bjc.data.SimpleTree; import bjc.utils.parserutils.ParserException; /** @@ -23,8 +23,8 @@ import bjc.utils.parserutils.ParserException; */ public class LeafCommand implements InitialCommand { @Override - public ITree> denote(final Token operator, final ParserContext ctx) + public Tree> denote(final Token operator, final ParserContext ctx) throws ParserException { - return new Tree<>(operator); + return new SimpleTree<>(operator); } } \ No newline at end of file diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/PostCircumfixCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/PostCircumfixCommand.java index cd13342..78ac1ef 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/PostCircumfixCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/PostCircumfixCommand.java @@ -4,8 +4,8 @@ import bjc.pratt.ParserContext; import bjc.pratt.blocks.ParseBlock; import bjc.pratt.commands.BinaryPostCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; import bjc.data.Tree; +import bjc.data.SimpleTree; import bjc.utils.parserutils.ParserException; /** @@ -50,10 +50,10 @@ public class PostCircumfixCommand extends BinaryPostCommand { } @Override - public ITree> denote(final ITree> operand, final Token operator, + public Tree> denote(final Tree> operand, final Token operator, final ParserContext ctx) throws ParserException { - final ITree> inside = innerBlock.parse(ctx); + final Tree> inside = innerBlock.parse(ctx); - return new Tree<>(mark, operand, inside); + return new SimpleTree<>(mark, operand, inside); } } \ No newline at end of file diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/PostfixCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/PostfixCommand.java index edea7e7..da587c1 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/PostfixCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/PostfixCommand.java @@ -3,8 +3,8 @@ package bjc.pratt.commands.impls; import bjc.pratt.ParserContext; import bjc.pratt.commands.BinaryPostCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; import bjc.data.Tree; +import bjc.data.SimpleTree; import bjc.utils.parserutils.ParserException; /** @@ -33,8 +33,8 @@ public class PostfixCommand extends BinaryPostCommand { } @Override - public ITree> denote(final ITree> operand, final Token operator, + public Tree> denote(final Tree> operand, final Token operator, final ParserContext ctx) throws ParserException { - return new Tree<>(operator, operand); + return new SimpleTree<>(operator, operand); } } \ No newline at end of file diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/PreTernaryCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/PreTernaryCommand.java index 0a7c8ff..e315804 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/PreTernaryCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/PreTernaryCommand.java @@ -4,8 +4,8 @@ import bjc.pratt.ParserContext; import bjc.pratt.blocks.ParseBlock; import bjc.pratt.commands.AbstractInitialCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; import bjc.data.Tree; +import bjc.data.SimpleTree; import bjc.utils.parserutils.ParserException; /** @@ -63,14 +63,14 @@ public class PreTernaryCommand extends AbstractInitialCommand } @Override - protected ITree> intNullDenotation(final Token operator, final ParserContext ctx) + protected Tree> intNullDenotation(final Token operator, final ParserContext ctx) throws ParserException { - final ITree> cond = condBlock.parse(ctx); + final Tree> cond = condBlock.parse(ctx); - final ITree> op1 = opblock1.parse(ctx); + final Tree> op1 = opblock1.parse(ctx); - final ITree> op2 = opblock2.parse(ctx); + final Tree> op2 = opblock2.parse(ctx); - return new Tree<>(trm, cond, op1, op2); + return new SimpleTree<>(trm, cond, op1, op2); } } \ No newline at end of file diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/TernaryCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/TernaryCommand.java index f4744a7..174f6fb 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/TernaryCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/TernaryCommand.java @@ -4,8 +4,8 @@ import bjc.pratt.ParserContext; import bjc.pratt.blocks.ParseBlock; import bjc.pratt.commands.BinaryPostCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; import bjc.data.Tree; +import bjc.data.SimpleTree; import bjc.utils.parserutils.ParserException; /** @@ -58,14 +58,14 @@ public class TernaryCommand extends BinaryPostCommand { } @Override - public ITree> denote(final ITree> operand, final Token operator, + public Tree> denote(final Tree> operand, final Token operator, final ParserContext ctx) throws ParserException { - final ITree> inner = innerBlck.parse(ctx); + final Tree> inner = innerBlck.parse(ctx); - final ITree> outer = ctx.parse.parseExpression(1 + leftBinding(), ctx.tokens, ctx.state, + final Tree> outer = ctx.parse.parseExpression(1 + leftBinding(), ctx.tokens, ctx.state, false); - return new Tree<>(mark, inner, operand, outer); + return new SimpleTree<>(mark, inner, operand, outer); } @Override diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/TransformingInitialCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/TransformingInitialCommand.java index 69eed45..d39ec90 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/TransformingInitialCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/TransformingInitialCommand.java @@ -6,7 +6,7 @@ import bjc.pratt.ParserContext; import bjc.pratt.commands.AbstractInitialCommand; import bjc.pratt.commands.InitialCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; +import bjc.data.Tree; import bjc.utils.parserutils.ParserException; /** @@ -26,7 +26,7 @@ import bjc.utils.parserutils.ParserException; public class TransformingInitialCommand extends AbstractInitialCommand { private final InitialCommand internl; - private final UnaryOperator>> transfrm; + private final UnaryOperator>> transfrm; /** * Create a new transforming initial command. @@ -38,14 +38,14 @@ public class TransformingInitialCommand extends AbstractInitialCommand< * The transform to apply to the returned tree. */ public TransformingInitialCommand(final InitialCommand internal, - final UnaryOperator>> transform) { + final UnaryOperator>> transform) { super(); internl = internal; transfrm = transform; } @Override - protected ITree> intNullDenotation(final Token operator, final ParserContext ctx) + protected Tree> intNullDenotation(final Token operator, final ParserContext ctx) throws ParserException { return transfrm.apply(internl.denote(operator, ctx)); } diff --git a/JPratt/src/main/java/bjc/pratt/commands/impls/UnaryCommand.java b/JPratt/src/main/java/bjc/pratt/commands/impls/UnaryCommand.java index 652dacd..2e7365b 100644 --- a/JPratt/src/main/java/bjc/pratt/commands/impls/UnaryCommand.java +++ b/JPratt/src/main/java/bjc/pratt/commands/impls/UnaryCommand.java @@ -3,8 +3,8 @@ package bjc.pratt.commands.impls; import bjc.pratt.ParserContext; import bjc.pratt.commands.AbstractInitialCommand; import bjc.pratt.tokens.Token; -import bjc.data.ITree; import bjc.data.Tree; +import bjc.data.SimpleTree; import bjc.utils.parserutils.ParserException; /** @@ -37,10 +37,10 @@ public class UnaryCommand extends AbstractInitialCommand { } @Override - protected ITree> intNullDenotation(final Token operator, final ParserContext ctx) + protected Tree> intNullDenotation(final Token operator, final ParserContext ctx) throws ParserException { - final ITree> opr = ctx.parse.parseExpression(nullPwer, ctx.tokens, ctx.state, false); + final Tree> opr = ctx.parse.parseExpression(nullPwer, ctx.tokens, ctx.state, false); - return new Tree<>(operator, opr); + return new SimpleTree<>(operator, opr); } } \ No newline at end of file -- cgit v1.2.3