Interface StackEvaluator

All Superinterfaces:
Evaluator
All Known Subinterfaces:
StandardStackEvaluator
All Known Implementing Classes:
DefaultStackEvaluator

public interface StackEvaluator extends Evaluator
Interface for stack-based expression evaluators, operating on postfix queues.
Author:
Curtis Rueden
  • Method Details

    • execute

      Object execute(Operator op, Deque<Object> stack)
      Executes an operation with the specified value stack.
      Parameters:
      op - The operator to execute.
      stack - The value stack containing the arguments to pass.
      Returns:
      The result of the operation.
    • evaluate

      default Object evaluate(String expression)
      Description copied from interface: Evaluator
      Evaluates an infix expression.
      Specified by:
      evaluate in interface Evaluator
      Parameters:
      expression - The infix expression to evaluate.
      Returns:
      The result of the evaluation.
    • evaluate

      default Object evaluate(SyntaxTree syntaxTree)
      Description copied from interface: Evaluator
      Evaluates a syntax tree.
      Specified by:
      evaluate in interface Evaluator
      Parameters:
      syntaxTree - The syntax tree to evaluate.
      Returns:
      The result of the evaluation.
    • evaluate

      default Object evaluate(LinkedList<Object> queue)
      Description copied from interface: Evaluator
      Evaluates a postfix token queue.
      Specified by:
      evaluate in interface Evaluator
      Parameters:
      queue - The postfix token queue to evaluate.
      Returns:
      The result of the evaluation.