Package lab8

Interface Summary
AndIsh The and operator (&)
AssignIsh An assignment node
AssignTypeRequiring A node whose right-child type must agree with the left-child type, as with an assignment or a cast node
BinaryComputeIsh Represent a bnary arithmetic node: Could be one of add, sub, mul, div, rem
BlockIsh This interface should be implemented by any AST node that represents a block {.....}.
BoolTypeProducing A node that yields a boolean result
ClassDeclaring An interface for an AST node that declares a class Classes have modifiers, like public/private, but no type
CompareIsh Represents all of the comparison operators.
ComputeIsh Represent an arithmetic node--generate code for its children then put out its operation.
ConstantBool A constant boolean value
ConstantFloat A node that produces a constant integer value
ConstantInt A node that produces a constant integer value
ConstantProducing A node that produces an ldc-type constant value
ConstantString A node that produces a constant String value
FieldDeclaring An interface for an AST node that declares an instance or static variable for a class.
FloatTypeProducing A node that produces an integer-type value
IfIsh An If node
IntTypeProducing A node that produces an integer-type value
InvokeIsh Represents a method call.
InvokeReference A reference to an invocation
LocalDeclaring An interface for an AST node that declares a local variable.
LocalReferencing Reference to a local variable
MethodDeclaring An interface for an AST node that declares a method.
ModsAttrs Represents whether a declaration is public/private, static/instance
OrIsh The or operator (|)
Referencing Some kind of a reference -- Local, Field, or Static
ReturnIsh A return node that returns no value
SameTypeRequiring A node whose semantics want the left and rightchild to agree on type.
ShortAndIsh The short-circuiting and operator (&&).
ShortOrIsh The short-circuiting or operator (||).
StaticReferencing Reference to a static field
StringTypeProducing A node that produces a java.lang.String-type value
SymDeclaring A convenient interface for anything that declares a symbol.
SymInfo Everything you want to know about a symbol
SymtabInterface This interface allows you to use my symbol-table solution or yours interchangeably
ThisIsh A "this" node
TypeAsserting A node that asserts a reference type.
TypeAttrs An interface for types, mine or yours, interchangeably.
UnaryComputeIsh Represent a unary arithmetic node, such as neg and return
WhileIsh A while node

Class Summary
CastNode A cast node
DumpNodeVisitor This visitor shows you the AST as-is, node for node, with node types printed out.
Symtab Abstract class so you can print out messages that are properly indented to reflect the current nest level.
TypeBridge This class bridges the generic Type interface from the parser to actual types used in semantic analysis.