public AndNode(Node receiver, Node argument) { this.receiver = receiver; this.argument = argument; }
public IfNode(Node condition, Node ifBody, Node elseBody) { this.condition = condition; this.ifBody = ifBody; this.elseBody = elseBody; }
public LocalAssignNode(string name,Node expression) { this.name = name; this.expression = expression; }
public ConstantAssignNode(string name, Node expression) { this.expression = expression; this.name = name; }
public CallNode(string method, Node receiver, Node argument) : this(method,receiver,new List<Node>()) { this.arguments.Add(argument); }
public NotNode(Node receiver) { this.receiver = receiver; }
public InstanceVariableAssignNode(string name,Node expression) { this.name = name; this.expression = expression; }
public CallNode(string method, Node receiver, List<Node> arguments) { this.method = method; this.receiver = receiver; this.arguments = arguments; }
public CatchBlock(string typeName, string localName, Node body) { this.typeName = typeName; this.localName = localName; this.body = body; }
public ClassDefinitionNode(string name, string superName,Node body) { this.name = name; this.superName = superName; this.body = body; }
public void AddCatchBlock(string typeName,string localName, Node body) { catchBlocks.Add(new CatchBlock(typeName,localName,body)); }
public TryNode(Node body) { this.body = body; catchBlocks = new List<CatchBlock>(); }
public WhileNode(Node condition, Node body) { this.condition = condition; this.body = body; }
public MethodDefinitionNode(string name, List<string> parameters, Node body) { this.name = name; this.parameters = parameters; this.body = body; }
public void Add(Node n) { nodes.Add(n); }