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

Encapsulates a definition of a concrete class. More...

Inheritance diagram for AST.ClassDefinition:
AST.TypeDefinition AST.IdDeclaration AST.Declaration AST.Statement AST.AstNode

Public Member Functions

 ClassDefinition (SingleIdentifierExpression id, List< Modifier > mods, List< string > bases, List< Declaration > decls, Location location)
 Constructor of ClassDefinition. More...
 
override Object Accept (Visitor v, Object o)
 Accept method of a concrete visitor. More...
 
- Public Member Functions inherited from AST.TypeDefinition
void AddNewField (FieldDeclaration f)
 Adds a new field declaration. More...
 
Declaration GetMemberElement (int index)
 Gets the element stored in the specified index. More...
 
void RemoveMemberElement (int index)
 Deletes the element stored in the specified index. More...
 
override Object Accept (Visitor v, Object o)
 Accept method of a concrete visitor. More...
 
- Public Member Functions inherited from AST.IdDeclaration
 IdDeclaration (SingleIdentifierExpression id, string type, Location location)
 Constructor of IdDeclaration More...
 
 IdDeclaration (SingleIdentifierExpression id, int indexSSA, string type, Location location)
 Constructor of IdDeclaration More...
 
override object AcceptOperation (AstOperation op, object arg)
 Dispatches expressions to the operation passed as argument. It provokes the execution of op.AcceptOperation(AstNode) with the parameter resolved polymorfically More...
 
- Public Member Functions inherited from AST.Statement
override object AcceptOperation (AstOperation op, object arg)
 Dispatches expressions to the operation passed as argument. It provokes the execution of op.AcceptOperation(AstNode) with the parameter resolved polymorfically More...
 
- Public Member Functions inherited from AST.AstNode
override bool Equals (object obj)
 AntLR compares Nodes with the class name. This is not correct for our purposes. More...
 
override int GetHashCode ()
 

Additional Inherited Members

- Protected Member Functions inherited from AST.TypeDefinition
 TypeDefinition (SingleIdentifierExpression id, List< Modifier > mods, List< string > bases, List< Declaration > decls, Location location)
 Constructor of TypeDefinition. More...
 
- Protected Member Functions inherited from AST.Declaration
 Declaration (string type, Location location)
 Constructor of Declaration More...
 
- Protected Member Functions inherited from AST.Statement
 Statement (Location location)
 Protected constructor of Statement. More...
 
- Protected Member Functions inherited from AST.AstNode
 AstNode (Location location)
 Protected constructor of NodeAst More...
 
- Protected Attributes inherited from AST.TypeDefinition
List< Declarationmembers
 Stores the members of the class. More...
 
- Protected Attributes inherited from AST.Declaration
TypeExpression frozenTypeExpression
 WriteType variable may change its type's substitution (e.g., field type variables) This attribute saves the type in an specific time (frozen). If this type's substitution changes, the frozen type does not. More...
 
- Protected Attributes inherited from AST.AstNode
Location location
 Location: Encapsulates in one object the line, column and filename More...
 
- Properties inherited from AST.TypeDefinition
int MemberCount [get]
 Gets the number of members More...
 
List< ModifierModifiers [get]
 Gets the list of modifiers More...
 
List< string > BaseClass [get]
 Gets the list of base class More...
 
- Properties inherited from AST.IdDeclaration
string Identifier [get]
 Gets the name associated to the declaration More...
 
string ILName [get]
 Gets the IL name associated to the declaration identifier. More...
 
SingleIdentifierExpression IdentifierExp [get]
 Gets the identifier expression More...
 
Symbol Symbol [get, set]
 The symbol of the identifier More...
 
- Properties inherited from AST.Declaration
TypeExpression TypeExpr [get, set]
 Gets or sets the type of the declaration More...
 
string FullName [get, set]
 Gets or sets the nominal type of the declaration More...
 
virtual TypeExpression ILTypeExpression [get]
 Gets the type expression to use in code generation. More...
 
- Properties inherited from AST.AstNode
Location Location [get]
 

Detailed Description

Encapsulates a definition of a concrete class.

Inheritance: IdDeclaration. Implements Composite pattern [Composite]. Implements Visitor pattern [Concrete Element].

Definition at line 34 of file ClassDefinition.cs.

Constructor & Destructor Documentation

AST.ClassDefinition.ClassDefinition ( SingleIdentifierExpression  id,
List< Modifier mods,
List< string >  bases,
List< Declaration decls,
Location  location 
)

Constructor of ClassDefinition.

Parameters
idName of the class.
modsList of modifier identifiers.
basesList of base class identifiers.
fileNameFile name.
lineNumberLine number.
columnNumberColumn number.

Definition at line 46 of file ClassDefinition.cs.

Member Function Documentation

override Object AST.ClassDefinition.Accept ( Visitor  v,
Object  o 
)
virtual

Accept method of a concrete visitor.

Parameters
vConcrete visitor
oOptional information to use in the visit.
Returns
Optional information to return

Implements AST.AstNode.

Definition at line 95 of file ClassDefinition.cs.


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