18 using System.Collections.Generic;
22 using ErrorManagement;
51 private List<MoveStatement> initWhile;
56 private List<ThetaStatement> beforeCondition;
61 private List<MoveStatement> afterCondition;
72 get {
return condition; }
73 set { this.condition = value; }
81 get {
return whileStatement; }
89 get {
return this.initWhile; }
90 set { this.initWhile = value; }
98 get {
return this.afterCondition; }
99 set { this.afterCondition = value; }
107 get {
return this.beforeCondition; }
108 set { this.beforeCondition = value; }
126 this.condition = cond;
127 this.whileStatement = statements;
128 this.initWhile =
new List<MoveStatement>();
129 this.beforeCondition =
new List<ThetaStatement>();
130 this.afterCondition =
new List<MoveStatement>();
145 return v.Visit(
this, o);
Abstract class encapsulate a programming language expression.
override Object Accept(Visitor v, Object o)
Accept method of a concrete visitor.
Statement Statements
Gets the block executed when the condition is true.
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.
Abstract class represents a programming language statement.
List< MoveStatement > AfterCondition
Gets or sets the statements after condition.
Encapsulates a While statement of our programming languages.
Expression Condition
Gets the condition expression of While Statement.
WhileStatement(Expression cond, Statement statements, Location location)
Constructor of WhileStatement
List< MoveStatement > InitWhile
Gets or sets the statements to use at the init of the while loop.
Location location
Location: Encapsulates in one object the line, column and filename
List< ThetaStatement > BeforeCondition
Gets or sets the statements before condition.