private ODataToken Eat(ODataTokenKind kind)
 {
     if (!this.TryEat(kind, out var next))
     {
         throw new ODataParseException(string.Format("Expected token of type {0}, but found {1}", kind, this.Next()));
     }
     return(next);
 }
Пример #2
0
 private bool TryEat(ODataTokenKind kind, out ODataToken next)
 {
     if (this.Next().Kind == kind)
     {
         next = this.Next();
         this._counter++;
         return(true);
     }
     next = null;
     return(false);
 }
Пример #3
0
        private bool TryEat(ODataTokenKind kind)
        {
            ODataToken next;

            return(this.TryEat(kind, out next));
        }
Пример #4
0
        private IReadOnlyList <TExpression> ParseExpressionList <TExpression>(Func <TExpression> elementParser, ODataTokenKind delimeter)
            where TExpression : ODataExpression
        {
            var elements = new List <TExpression> {
                elementParser()
            };

            while (this.TryEat(delimeter))
            {
                elements.Add(elementParser());
            }
            return(elements.AsReadOnly());
        }
Пример #5
0
 internal ODataToken(Match match, ODataTokenKind kind)
 {
     this.Match = match;
     this.Kind  = kind;
 }
 private bool TryEat(ODataTokenKind kind) => this.TryEat(kind, out _);