示例#1
0
 public AndNode(Node receiver, Node argument)
 {
     this.receiver = receiver;
     this.argument = argument;
 }
示例#2
0
 public IfNode(Node condition, Node ifBody, Node elseBody)
 {
     this.condition = condition;
     this.ifBody = ifBody;
     this.elseBody = elseBody;
 }
示例#3
0
 public LocalAssignNode(string name,Node expression)
 {
     this.name = name;
     this.expression = expression;
 }
 public ConstantAssignNode(string name, Node expression)
 {
     this.expression = expression;
     this.name = name;
 }
示例#5
0
 public CallNode(string method, Node receiver, Node argument)
     : this(method,receiver,new List<Node>())
 {
     this.arguments.Add(argument);
 }
示例#6
0
 public NotNode(Node receiver)
 {
     this.receiver = receiver;
 }
 public InstanceVariableAssignNode(string name,Node expression)
 {
     this.name = name;
     this.expression = expression;
 }
示例#8
0
 public CallNode(string method, Node receiver, List<Node> arguments)
 {
     this.method = method;
     this.receiver = receiver;
     this.arguments = arguments;
 }
示例#9
0
 public CatchBlock(string typeName, string localName, Node body)
 {
     this.typeName = typeName;
     this.localName = localName;
     this.body = body;
 }
示例#10
0
 public ClassDefinitionNode(string name, string superName,Node body)
 {
     this.name = name;
     this.superName = superName;
     this.body = body;
 }
示例#11
0
 public void AddCatchBlock(string typeName,string localName, Node body)
 {
     catchBlocks.Add(new CatchBlock(typeName,localName,body));
 }
示例#12
0
 public TryNode(Node body)
 {
     this.body = body;
     catchBlocks = new List<CatchBlock>();
 }
示例#13
0
 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;
 }
示例#15
0
 public void Add(Node n)
 {
     nodes.Add(n);
 }