示例#1
0
 public DeclarationStatement(Types type, string name, Expression expression, Method method)
     : base(expression)
 {
     Type = type;
     VariableName = name;
     method.Variables.Add(this);
 }
示例#2
0
 public AdditionExpression AdditionExpression(Expression expr1, Expression expr2)
 {
     return new AdditionExpression(expr1, expr2);
 }
示例#3
0
 public Statement WhileStatement(Expression expression)
 {
     return new WhileStatement(expression);
 }
示例#4
0
 public ReturnStatement(Expression expression)
     : base(expression)
 {
 }
示例#5
0
 public Statement(Expression expression)
 {
     Expression = expression;
 }
示例#6
0
 public AdditionExpression(Expression expr1, Expression expr2)
     : base(expr1, expr2)
 {
 }
示例#7
0
 public Statement IfStatement(Expression expression)
 {
     return new IfStatement(expression);
 }
示例#8
0
 public Expression DivisionExpression(Expression expr1, Expression expr2)
 {
     return new DivisionExpression(expr1, expr2);
 }
示例#9
0
 public Expression MultiplicationExpression(Expression expr1, Expression expr2)
 {
     return new MultiplicationExpression(expr1, expr2);
 }
示例#10
0
 public LessThanExpression(Expression expr1, Expression expr2)
     : base(expr1, expr2)
 {
 }
示例#11
0
 public GreaterThanExpression(Expression expr1, Expression expr2)
     : base(expr1, expr2)
 {
 }
示例#12
0
 public WhileStatement(Expression expression)
     : base(expression)
 {
     Body = new List<Statement>();
 }
示例#13
0
 public RemainderExpression(Expression expr1, Expression expr2)
     : base(expr1, expr2)
 {
 }
示例#14
0
 public MultiplicationExpression(Expression expr1, Expression expr2)
     : base(expr1, expr2)
 {
 }
示例#15
0
 public AssignmentStatement AssignmentStatement(string name, Expression expression)
 {
     return new AssignmentStatement(name, expression);
 }
示例#16
0
 public Statement DeclarationStatement(string typeName, string name, Expression expression)
 {
     return new DeclarationStatement(GetTypeFromName(typeName), name, expression, currentMethod);
 }
示例#17
0
 public Expression RelationalExpression(string op, Expression expr1, Expression expr2)
 {
     switch (op)
     {
         case "<":
             return new LessThanExpression(expr1, expr2);
         case ">":
             return new GreaterThanExpression(expr1, expr2);
         default:
             throw new ArgumentException("Unknown operator: " + op);
     }
 }
示例#18
0
 public Statement ForStatement(Expression expression)
 {
     return new ForStatement(expression);
 }
示例#19
0
 public Expression RemainderExpression(Expression expr1, Expression expr2)
 {
     return new RemainderExpression(expr1, expr2);
 }
示例#20
0
 public Statement ReturnStatement(Expression expression)
 {
     return new ReturnStatement(expression);
 }
示例#21
0
 public Statement Statement(Expression e)
 {
     return new Statement(e);
 }
示例#22
0
 public DivisionExpression(Expression expr1, Expression expr2)
     : base(expr1, expr2)
 {
 }
示例#23
0
 public Expression SubtractionExpression(Expression expr1, Expression expr2)
 {
     return new SubtractionExpression(expr1, expr2);
 }
示例#24
0
 public AssignmentStatement(string name, Expression expression)
     : base(expression)
 {
     VariableName = name;
 }
示例#25
0
 public SubtractionExpression(Expression expr1, Expression expr2)
     : base(expr1, expr2)
 {
 }