public override void visit(Identifier n)
 {
     int stackLocation = tables[scope].Lookup(n.Name).StackLocation;
     stack.Push(new RegisterOffset(Global.Registers.STACKBASEPOINTER, -stackLocation));
 }
Пример #2
0
 public abstract void visit(Identifier identifier);
Пример #3
0
 private Assignment EatAssignment()
 {
     Assignment node = new Assignment(context[0]);
     Identifier lhs = new Identifier(tokens[0].value);
     CutData(2);
     Exp rhs = EatExpression();
     node.LHS = lhs;
     node.RHS = rhs;
     astBase.Children.Add(node);
     return node;
 }
Пример #4
0
 public virtual void visit(Identifier identifier)
 {
     // Do nothing; leave the implementation to the main class
 }
Пример #5
0
 public IdentifierExp(ILineContext context, Identifier id) : base(context)
 {
     ID = id;
 }