src/ast.h File Reference

Abstract Syntax Tree. More...

#include "token.h"
#include "cons.h"
#include "tipe.h"

Go to the source code of this file.

Classes

class  ASTNode
 Root abstract class for Abstract syntax tree nodes. More...
class  Asm
 Inline assembly. More...
class  Stmt
 Abstract class for statements. More...
class  Spec
class  StoreSpec
 A storage class specifier (ie static). More...
class  Declarator
 Name and pointer/array info for variable. More...
class  AbstractDeclarator
class  Type
 A fully qualified type. More...
class  Ident
 An Identifier. More...
class  Expr
 Abstract class for expressions. More...
class  OpExpr
 Abstract class for expressions with operators. More...
class  Literal
 A literaral expression. More...
class  IntLiteral
 Integer Literal. More...
class  StringLiteral
 String Literal. More...
class  SimpleDeclarator
 Declarator with just a name. More...
class  ArrayDeclarator
 Declarator for an array. More...
class  FuncDeclarator
 Declarator for an function pointer. More...
class  Initializer
 The initializer in a declaration. More...
class  StructFieldInit
 Single field in structure initializer. More...
class  NamedStructFieldInit
 Single field in structure initializer. More...
class  StructInitializer
 A Structure initializer. More...
class  DeclInit
 One variable in a declaration and its initializer. More...
class  VarDecList
 List of variable declarations. More...
class  ExprStmt
 A statement consisting of a single expression. More...
class  CastExpr
 Cast Expression. More...
class  UnExpr
 A unary expression. More...
class  PrefixExpr
 A prefix unary expression. More...
class  PostfixExpr
 A postfix unary expression. More...
class  SizeofExpr
 The sizeof() operator expression. More...
class  BinExpr
 A binary expression. More...
class  SubscriptExpr
 An array subscript expression. More...
class  CondExpr
 The conditional (trinary) operator expression.,. More...
class  NameExpr
 A expression for a named identifier. More...
class  CallExpr
 Function Call. More...
class  LabeledStmt
 A Label or a case in a switch. More...
class  JumpStmt
 A goto. More...
class  Block
 A C block (list of statements). More...
class  SelectionStmt
 selection statement (an if or a switch/case). More...
class  While
 While loop. More...
class  DoWhile
 Do While loop. More...
class  For
 For loop. More...
class  Enum
 An enum declaration. More...
class  Enumerator
 A single enumertor in an enum declaration. More...
class  StructOrUnion
 A struct or union declaration. More...
class  StructDeclarator
 A declarator for a field within a struct. More...
class  StructDeclaration
 A field declaration within a struct. More...
class  TypeSpec
 A type specifier (ie int). More...
class  PrimitiveTypeSpec
 A type specifier for a primitive (ie int). More...
class  NameTypeSpec
 A type specifier for a named (object or typedef'd) type. More...
class  PointerSpec
 A type specifier for a pointer ('*'). More...
class  StructTypeSpec
 A type specifier for a struct or union declaration. More...
class  EnumTypeSpec
 A type specifier for an enum declaration. More...
class  DeclarationSpec
 A list of declaration specifiers. More...
class  Declaration
 Declaration for variable/typedef. More...
class  TypeDefDeclaration
class  Formal
class  NormFormal
 Type and name of function parameter. More...
class  VaFormal
 VaArgs (elipsis). More...
class  FuncDefinition
 Function Definition. More...
class  File
 Our translation unit. More...
class  InstanceVars
 Fields declared in a class declaration. More...
class  KeyDeclarator
 Declarator for a keyword argument. More...
class  Klass
 Abstract class for Interfaces and Implementations. More...
class  Method
 Abstract class for method declarations and definitions. More...
class  MethodDec
 Abstract class for method declarations. More...
class  ClassMethodDec
 Class method declaration. More...
class  InstanceMethodDec
 Instance method declaration. More...
class  MethodDefinition
 Abstract class for method definitions. More...
class  ClassMethodDefinition
 Class method definition. More...
class  InstanceMethodDefinition
 Instance method definition. More...
class  Interface
 A class declaration. More...
class  Implementation
 A class definition. More...
class  SelfExpr
class  MessageExpr
 Abstract class for message expressions ([a key: b]). More...
class  InstanceMessageExpr
 Message passed to an instance. More...
class  ClassMessageExpr
 Message passed to a class. More...
class  KeywordArgument
 Arguments to messages (key: exp). More...
class  AsmStmt
 Statement of assembly instructions. More...
class  VisSpec
 Class field visibility specificier, (ie @public). More...


Detailed Description

Abstract Syntax Tree.


Generated on Mon Dec 24 06:11:58 2007 for gfront by  doxygen 1.5.2