18 using System.Collections.Generic;
23 using ErrorManagement;
54 get {
return this.initialization; }
64 get {
return this.frozenTypeExpression; }
65 set { this.frozenTypeExpression = value; }
82 : base(id, type, location)
84 this.initialization = init;
98 : base(id, indexSSA, type, location)
100 this.initialization = init;
115 return v.Visit(
this, o);
120 #region Dispatcher AstOperation
129 return op.Exec(
this, arg);
Abstract class encapsulate a programming language expression.
Definition(SingleIdentifierExpression id, string type, Expression init, int indexSSA, Location location)
Constructor of Definition
Expression Init
Gets the initialization of the definition
TypeExpression FrozenTypeExpression
WriteType variable may change its type's substitution (e.g., field type variables) This attribute sav...
This class encapsulates a location in a specific file. Implements an Inmutable pattern. So it can be used in any context, that is his internal fields never change.
Encapsulates a definition.
This class represent the entry wnen sending a message to an operation object. derived from AstNode ...
Abstract class that represents all different types.
Encapsulates a identifier expression of our programming language.
override Object Accept(Visitor v, Object o)
Accept method of a concrete visitor.
Encapsulates a declaration.
Location location
Location: Encapsulates in one object the line, column and filename
override object AcceptOperation(AstOperation op, object arg)
Dispatches expressions to the operation passed as argument. It provokes the execution of op...
Definition(SingleIdentifierExpression id, string type, Expression init, Location location)
Constructor of Definition.