diff options
Diffstat (limited to 'JPratt/src/main/java/bjc/pratt/commands/BinaryCommand.java')
| -rw-r--r-- | JPratt/src/main/java/bjc/pratt/commands/BinaryCommand.java | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/JPratt/src/main/java/bjc/pratt/commands/BinaryCommand.java b/JPratt/src/main/java/bjc/pratt/commands/BinaryCommand.java deleted file mode 100644 index 7a65052..0000000 --- a/JPratt/src/main/java/bjc/pratt/commands/BinaryCommand.java +++ /dev/null @@ -1,53 +0,0 @@ -package bjc.pratt.commands; - -import bjc.pratt.ParserContext; -import bjc.pratt.commands.CommandResult.Status; -import bjc.pratt.tokens.Token; -import bjc.data.Tree; -import bjc.data.SimpleTree; -import bjc.utils.parserutils.ParserException; - -/** - * A binary operator. - * - * @author bjculkin - * - * @param <K> - * The key type of the tokens. - * - * @param <V> - * The value type of the tokens. - * - * @param <C> - * The state type of the parser. - */ -public abstract class BinaryCommand<K, V, C> extends BinaryPostCommand<K, V, C> { - /** - * Create a new binary operator with the specified precedence. - * - * @param precedence - * The precedence of the operator. - */ - public BinaryCommand(final int precedence) { - super(precedence); - } - - /** - * The right-binding power (right-precedence) of this command. - * - * @return The right binding power of this command. - */ - protected abstract int rightBinding(); - - @Override - public CommandResult<K, V> denote(final Tree<Token<K, V>> operand, - final Token<K, V> operator, final ParserContext<K, V, C> ctx) - throws ParserException { - final CommandResult<K,V> opr - = ctx.parse.parseExpression(rightBinding(), ctx.tokens, ctx.state, false); - - if (opr.status != Status.SUCCESS) return opr; - - return CommandResult.success(new SimpleTree<>(operator, operand, opr.success())); - } -}
\ No newline at end of file |
