The StaDyn Programming Language
Source code documentation of StaDyn, a hybrid static and dynamic typing language.
CodeGeneration.VisitorCodeGeneration2 Class Reference

This class walks the AST to obtain the field and localinit directives. More...

Inheritance diagram for CodeGeneration.VisitorCodeGeneration2:
CodeGeneration.VisitorCodeGenerationBase Tools.VisitorAdapter Tools.Visitor

Public Member Functions

 VisitorCodeGeneration2 ()
 Constructor of VisitorCodeGeneration2 More...
 
override Object Visit (ClassDefinition node, Object obj)
 
override Object Visit (InvocationExpression node, Object obj)
 
override Object Visit (CastExpression node, Object obj)
 
override Object Visit (FieldAccessExpression node, Object obj)
 
override Object Visit (MethodDefinition node, Object obj)
 
override Object Visit (ConstructorDefinition node, Object obj)
 
override Object Visit (FieldDefinition node, Object obj)
 
override Object Visit (IdDeclaration node, Object obj)
 
override Object Visit (Definition node, Object obj)
 
override Object Visit (NewArrayExpression node, Object obj)
 
override Object Visit (BoolLiteralExpression node, Object obj)
 
override Object Visit (CharLiteralExpression node, Object obj)
 
override Object Visit (DoubleLiteralExpression node, Object obj)
 
override Object Visit (IntLiteralExpression node, Object obj)
 
override Object Visit (StringLiteralExpression node, Object obj)
 
override void AddExceptionCode ()
 
override void Close ()
 Class used to generate de intermediate code We implement explicitly covariance in this attribute by means of genericity More...
 
- Public Member Functions inherited from Tools.VisitorAdapter
override Object Visit (SourceFile node, Object obj)
 
override Object Visit (Namespace node, Object obj)
 
override Object Visit (DeclarationSet node, Object obj)
 
override Object Visit (FieldDeclarationSet node, Object obj)
 
override Object Visit (IdDeclaration node, Object obj)
 
override Object Visit (Definition node, Object obj)
 
override Object Visit (ConstantDefinition node, Object obj)
 
override Object Visit (PropertyDefinition node, Object obj)
 
override Object Visit (ClassDefinition node, Object obj)
 
override Object Visit (InterfaceDefinition node, Object obj)
 
override Object Visit (ConstructorDefinition node, Object obj)
 
override Object Visit (FieldDeclaration node, Object obj)
 
override Object Visit (FieldDefinition node, Object obj)
 
override Object Visit (ConstantFieldDefinition node, Object obj)
 
override Object Visit (MethodDeclaration node, Object obj)
 
override Object Visit (MethodDefinition node, Object obj)
 
override Object Visit (ArgumentExpression node, Object obj)
 
override Object Visit (ArithmeticExpression node, Object obj)
 
override Object Visit (ArrayAccessExpression node, Object obj)
 
override Object Visit (AssignmentExpression node, Object obj)
 
override Object Visit (BaseCallExpression node, Object obj)
 
override Object Visit (BaseExpression node, Object obj)
 
override Object Visit (BinaryExpression node, Object obj)
 
override Object Visit (BitwiseExpression node, Object obj)
 
override Object Visit (BoolLiteralExpression node, Object obj)
 
override Object Visit (CastExpression node, Object obj)
 
override Object Visit (CharLiteralExpression node, Object obj)
 
override Object Visit (CompoundExpression node, Object obj)
 
override Object Visit (DoubleLiteralExpression node, Object obj)
 
override Object Visit (FieldAccessExpression node, Object obj)
 
override Object Visit (IntLiteralExpression node, Object obj)
 
override Object Visit (InvocationExpression node, Object obj)
 
override Object Visit (IsExpression node, Object obj)
 
override Object Visit (LogicalExpression node, Object obj)
 
override Object Visit (NewArrayExpression node, Object obj)
 
override Object Visit (NewExpression node, Object obj)
 
override Object Visit (NullExpression node, Object obj)
 
override Object Visit (QualifiedIdentifierExpression node, Object obj)
 
override Object Visit (RelationalExpression node, Object obj)
 
override Object Visit (SingleIdentifierExpression node, Object obj)
 
override Object Visit (StringLiteralExpression node, Object obj)
 
override Object Visit (TernaryExpression node, Object obj)
 
override Object Visit (ThisExpression node, Object obj)
 
override Object Visit (UnaryExpression node, Object obj)
 
override Object Visit (AssertStatement node, Object obj)
 
override Object Visit (BreakStatement node, Object obj)
 
override Object Visit (CatchStatement node, Object obj)
 
override Object Visit (Block node, Object obj)
 
override Object Visit (ContinueStatement node, Object obj)
 
override Object Visit (DoStatement node, Object obj)
 
override Object Visit (ForeachStatement node, Object obj)
 
override Object Visit (ForStatement node, Object obj)
 
override Object Visit (IfElseStatement node, Object obj)
 
override Object Visit (ReturnStatement node, Object obj)
 
override Object Visit (SwitchLabel node, Object obj)
 
override Object Visit (SwitchSection node, Object obj)
 
override Object Visit (SwitchStatement node, Object obj)
 
override Object Visit (ThrowStatement node, Object obj)
 
override Object Visit (ExceptionManagementStatement node, Object obj)
 
override Object Visit (WhileStatement node, Object obj)
 
override Object Visit (MoveStatement node, Object obj)
 
override Object Visit (ThetaStatement node, Object obj)
 

Properties

int CurrentAuxiliarSuffix [get, set]
 

Additional Inherited Members

- Static Public Member Functions inherited from Tools.Visitor
static T getInheritedAttributes< T > (Object attributes, int index)
 Generic helper function that takes the visitor parameter an converts it into the appropiate inherited attribute. More...
 
static T getInheritedAttributes< T > (Object attributes)
 Overloaded version of the above method More...
 
- Protected Attributes inherited from Tools.VisitorAdapter
string currentFile
 Name of the current file. More...
 

Detailed Description

This class walks the AST to obtain the field and localinit directives.

Inheritance: VisitorAdapter. Implements Visitor pattern [Concrete Visitor].

Definition at line 31 of file VisitorCodeGeneration2.cs.

Constructor & Destructor Documentation

CodeGeneration.VisitorCodeGeneration2.VisitorCodeGeneration2 ( )

Constructor of VisitorCodeGeneration2

Definition at line 71 of file VisitorCodeGeneration2.cs.

Member Function Documentation

override void CodeGeneration.VisitorCodeGeneration2.AddExceptionCode ( )
virtual
override void CodeGeneration.VisitorCodeGeneration2.Close ( )
virtual

Class used to generate de intermediate code We implement explicitly covariance in this attribute by means of genericity

Implements CodeGeneration.VisitorCodeGenerationBase.

Definition at line 277 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( ClassDefinition  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 85 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( InvocationExpression  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 96 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( CastExpression  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 112 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( FieldAccessExpression  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 128 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( MethodDefinition  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 144 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( ConstructorDefinition  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 153 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( FieldDefinition  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 165 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( IdDeclaration  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 189 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( Definition  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 198 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( NewArrayExpression  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 210 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( BoolLiteralExpression  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 235 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( CharLiteralExpression  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 243 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( DoubleLiteralExpression  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 251 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( IntLiteralExpression  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 259 of file VisitorCodeGeneration2.cs.

override Object CodeGeneration.VisitorCodeGeneration2.Visit ( StringLiteralExpression  node,
Object  obj 
)
virtual

Implements Tools.Visitor.

Definition at line 267 of file VisitorCodeGeneration2.cs.

Property Documentation

int CodeGeneration.VisitorCodeGeneration2.CurrentAuxiliarSuffix
getset

Definition at line 59 of file VisitorCodeGeneration2.cs.


The documentation for this class was generated from the following file: