All Classes and Interfaces
Class
Description
The syntax node representing a binary operator.
This class provides a tiny compiler that translates code written in the
little language into
Instruction
s that the Interpreter
class can execute.This class provides the instruction that places an integer constant (as an
operand) to a stack.
The exception that the
Interpreter
throws when there is an attempt
to divide an integer value by zero.The code that each operator executes.
The instruction that the
Interpreter
runs.A function representing operation with a binary operator.
The syntax node representing an operand and an integer constant.
A tiny interpreter that is an implementation of a stack machine, retrieves
instructions from an iterator, and executes them.
A utility class to evaluate
int
expressions.A function representing operation with a unary operator.
Provides messages for exceptions that
Compiler
and
Interpreter
throw.Provides constants of opcodes to visualize the syntax tree.
This interface provides the factory of an
Executable
object.This class provides the utility methods for operations.
The instruction that pops the operand(s) from the stack, executes the
function with the operand(s), and pushes the return value to the stack.
This class provides the class objects of operators.
This class represents the types of operators.
The exception that the
Interpreter
throws when an arithmetic
operation results in an overflow.This interface represents the operator wrapper temporally created while
the
Compiler
creates the list of Instruction
objects in
Reverse Polish notation.The node of
SyntaxTree
.This class represents the tree of
SyntaxNode
to visualize
instructions in Reverse Polish notation.The syntax node representing a unary operator.