public override LaxExpression WithRangeOf(ICodeRange range) { return new BinaryOp(range.CodeRange, Operator) { Left = this.Left, Right = this.Right, }; }
public Assignment(ICodeRange pos) : base(ExprType.Assignment, PrecedenceFromToken("="), AssociateFrom("=")) { this.CodeRange = pos.CodeRange; }
public virtual LaxExpression WithRangeOf(ICodeRange range) { throw new NotImplementedException(); }
/// <summary> /// Expand this position to cover the other position. /// </summary> /// <param name="end"></param> public CodeRange Expand2(ICodeRange pos) { var end = pos.CodeRange; var r = new CodeRange() { Start = this.Start, End = this.End, }; if (end.Start < r.Start) r.Start = end.Start; if (r.End < end.End) r.End = end.End; return r; }
public CodeRange(ICodeRange a, ICodeRange b) : this(a.CodeRange, b.CodeRange) { }
public SyntaxError(ICodeRange token, string message) : this(token.CodeRange, message) { }