ArrayDeclarator | Declarator for an array |
Asm | Inline assembly |
AsmStmt | Statement of assembly instructions |
ASTNode | Root abstract class for Abstract syntax tree nodes |
ASTNode(Print) | AST traverals category to print as C |
BinExpr | A binary expression |
Block | A C block (list of statements) |
CallExpr | Function Call |
CastExpr | Cast Expression |
check_context | Context information used for typechecking |
ClassMessageExpr | Message passed to a class |
ClassMethodDec | Class method declaration |
ClassMethodDefinition | Class method definition |
ClassReg | Used for classes |
ClassType | Manages type information for a class |
CondExpr | The conditional (trinary) operator expression., |
Cons | A cons cell |
ContainerReg | Used for structs and unions |
ContainerTipe | Abstract types for structs/unions/classes |
Declaration | Declaration for variable/typedef |
DeclarationSpec | A list of declaration specifiers |
Declarator | Name and pointer/array info for variable |
DeclInit | One variable in a declaration and its initializer |
DeclReg | Closure object used to register a declaration |
DoWhile | Do While loop |
Enum | An enum declaration |
Enumerator | A single enumertor in an enum declaration |
EnumTypeSpec | A type specifier for an enum declaration |
ErrorTipe | Generated on typechecking errors to avoid cascading errors |
Expr | Abstract class for expressions |
Expr(Print) | Precedence level printing for expressions |
ExprStmt | A statement consisting of a single expression |
Field | Field in a struct/union/class |
File | Our translation unit |
For | For loop |
FormalReg | Registers function formals at definition |
FormalWrapReg | Wraps the formal reg in formal ASTNode |
FuncDeclarator | Declarator for an function pointer |
FuncDefinition | Function Definition |
FunctionTipe | Type of functions |
Ident | An Identifier |
Implementation | A class definition |
Initializer | The initializer in a declaration |
InstanceMessageExpr | Message passed to an instance |
InstanceMethodDec | Instance method declaration |
InstanceMethodDefinition | Instance method definition |
InstanceVars | Fields declared in a class declaration |
Interface | A class declaration |
IntLiteral | Integer Literal |
JumpStmt | A goto |
KeyDeclarator | Declarator for a keyword argument |
KeywordArgument | Arguments to messages (key: exp) |
Klass | Abstract class for Interfaces and Implementations |
LabeledStmt | A Label or a case in a switch |
Literal | A literaral expression |
MessageExpr | Abstract class for message expressions ([a key: b]) |
Method | Abstract class for method declarations and definitions |
MethodDec | Abstract class for method declarations |
MethodDefinition | Abstract class for method definitions |
NamedStructFieldInit | Single field in structure initializer |
NameExpr | A expression for a named identifier |
NameTypeSpec | A type specifier for a named (object or typedef'd) type |
NormFormal | Type and name of function parameter |
NullReg | Nop, for abstract declarators |
ObjectTipe | Type for object instances |
OpExpr | Abstract class for expressions with operators |
PointerSpec | A type specifier for a pointer ('*') |
PointerTipe | Pointer to some other type |
PostfixExpr | A postfix unary expression |
PrefixExpr | A prefix unary expression |
PrimitiveTipe | Basic C type (ie, int, char, void) |
PrimitiveTypeSpec | A type specifier for a primitive (ie int) |
Scope | Nested Symbol Table |
ScopeReg | Used for methods and functions |
SelectionStmt | Selection statement (an if or a switch/case) |
SimpleDeclarator | Declarator with just a name |
SizeofExpr | The sizeof() operator expression |
Stmt | Abstract class for statements |
StoreSpec | A storage class specifier (ie static) |
StringLiteral | String Literal |
StructDeclaration | A field declaration within a struct |
StructDeclarator | A declarator for a field within a struct |
StructFieldInit | Single field in structure initializer |
StructInitializer | A Structure initializer |
StructOrUnion | A struct or union declaration |
StructTipe | Type for structures |
StructTypeSpec | A type specifier for a struct or union declaration |
SubscriptExpr | An array subscript expression |
SymTable | A mapping from (char*) to (id) |
SymTableReg | Used for structs and unions |
table_entry | Structure for entries in symbol table |
Tipe | Abstract class for types |
Token | Holds information about tokens produced by scanner |
Type | A fully qualified type |
TypeSpec | A type specifier (ie int) |
UnExpr | A unary expression |
UnionTipe | Type for unions |
VaFormal | VaArgs (elipsis) |
VarDecList | List of variable declarations |
VisSpec | Class field visibility specificier, (ie @public) |
While | While loop |