public RepeatNode(BlockNode statements, ExprNode expr) { Statements = statements; Expr = expr; }
public RepeatNode(BlockNode stat, ExprNode expr) { this.StList = stat; this.Expr = expr; }
public WhileNode(ExprNode expr, BlockNode statements) { Statements = statements; Expr = expr; }
public WhileNode(ExprNode condition, BlockNode stat) { Condition = condition; Stat = stat; }
public IfNode(ExprNode condition, BlockNode stat, BlockNode elseStat) { Condition = condition; Stat = stat; ElseStat = elseStat; }
public RepeatNode(BlockNode block, ExprNode expr) { Block = block; Expr = expr; }
public WhileNode(BlockNode statements, ExprNode expr) { Statements = statements; Expr = expr; }
public RepeatNode(BlockNode stlist, ExprNode expr) { Stlist = stlist; Expr = expr; }
public RepeatNode(BlockNode block, ExprNode expr) { Сondition = expr; Block = block; }
public RepeatNode(BlockNode stat, ExprNode exp) { StList = stat; Expr = exp; }
public RepeatNode(ExprNode expr, BlockNode block) { Expr = expr; Block = block; }
public IfNode(ExprNode cond, BlockNode onTrue, BlockNode onFalse) { TrueChild = onTrue; FalseChild = onFalse; Cond = cond; }
public IfNode(ExprNode cond, BlockNode child) { TrueChild = child; FalseChild = null; Cond = cond; }
public WhileNode(ExprNode cond, BlockNode child) { Child = child; Cond = cond; }