Class Summary |
Absyn |
Class from which all abstract syntax tree nodes inherit. |
ArrayExp |
"new" Type "[" Exp "]" ( "[" "]" )* |
ArrayType |
Type "[" "]" |
AssignExp |
Exp "=" Exp |
BinExp |
Exp ( "&&" | "||" | "==" | "!=" | "<" | ">" | "<=" | ">=" | "+" | "-" | "*" | "/" ) Exp |
Block |
"{" Stm* "}" |
BreakStm |
"break" ";" |
CallExp |
Exp "." ID "(" [ Exp ( "," Exp )* ] ")" |
ClassDec |
"class" ID [ "extends" ID ] "{" MemberDec* "}" |
ContinueStm |
"continue" ";" |
Exp |
Class from which all expressions inherit. |
ExpStm |
[ Exp ] |
FieldDec |
[ "static" ] Type ID ( "," ID )* ";" |
FieldExp |
Exp "." ID |
Formal |
Type ID |
ForStm |
"for" "(" [ VarDecList ] ";" [ Exp ] ";" [ ExpStm ( "," ExpStm )* ] ")" Stm |
IfStm |
"if" "(" Exp ")" Stm [ "else" Stm ] |
LiteralExp |
INT | CHAR | STRING | "null" | "true" | "false" |
MemberDec |
Class from which all member declarations inherit. |
MethodDec |
[ "public" ] [ "static" ] ( "void" | Type ) ID "(" [ Formal ( "," Formal )* ] ")" [ "throws" "java.io.IOException" ] Block |
NameExp |
ID |
NameType |
ID |
ObjectExp |
"new" ID "(" ")" |
PrimitiveType |
"void" | "boolean" | "int" |
Print |
A visitor to print the abstract syntax trees. |
ReturnStm |
"return" [ Exp ] ";" |
Stm |
Class from which all statements inherit. |
SubscriptExp |
Exp "[" Exp "]" |
SuperExp |
"super" |
ThisExp |
"this" |
Type |
Class from which all types inherit. |
UnExp |
( "!" | "-" ) Exp |
VarDec |
Type ID [ "=" Exp ] |
Visitor<Domain,Range> |
|
WhileStm |
"while" "(" Exp ")" Stm |