public DivideAssignment(Access a, Expression e, int l, int c)
     : base(a, e, l, c) { }
Пример #2
0
 public abstract void VisitAccess(Access access);
Пример #3
0
 public Assignment(Access acc, Expression e, int l, int c)
     : base(l, c)
 {
     Lefthand = acc;
     Expression = e;
 }
 public MultiplyAssignment(Access a, Expression e, int l, int c)
     : base(a, e, l, c) { }
 public AdditionAssignment(Access a, Expression e, int l, int c)
     : base(a, e, l, c) { }
Пример #6
0
 public abstract void VisitAccess(Access access);
Пример #7
0
 public XorAssignment(Access a, Expression e, int l, int c)
     : base(a, e, l, c)
 {
 }
Пример #8
0
 Expression access()
 {
     Token temp = next;
     Expression x = factor();
     if (x.GetType() == typeof(Id))
     {
         var val = Context.Resources.GetNamedValue(x.ToString());
         if (!val.IsNull)
             x = val.IsReal ? new Constant(val.Real, temp.line, temp.col) : new Constant(val.String, temp.line, temp.col);
         else
             x = new Access(null, x.ToString(), subscript(), temp.line, temp.col);
     }
     while (t == TokenKind.Dot)
     {
         move();
         if (t != TokenKind.Identifier || !Context.Resources.GetNamedValue(x.ToString()).IsNull)
             error(Error.ExpectedVariableName);
         string n = next.lexeme;
         move();
         x = new Access(x, n, subscript(), temp.line, temp.col);
     }
     return x;
 }