private void AssertNextTokenKind(StepTokenKind kind) { AssertTokensRemain(); if (Current.Kind != kind) { ReportError($"Expected '{kind}' token but found '{Current.Kind}'"); } }
private bool Accept(StepTokenKind kind, string text = null) { if (enumerator_.TryPeek(out var token) && token.Kind == kind) { if (text == null || token.StringBuilder.Equals(text)) { enumerator_.MoveNext(); return(true); } } return(false); }
private void Expect(StepTokenKind kind, string text = null) { if (enumerator_.TryPeek(out var token)) { if (token.Kind == kind) { if (text == null || token.StringBuilder.Equals(text)) { enumerator_.MoveNext(); return; } } throw new UnexpectedTokenException($"Expected token {kind}({text}), found {token.Kind}({token})"); } throw new UnexpectedTokenException($"Expected token {kind}({text}), found end of file"); }
private TokenVerifier WithKind(StepTokenKind kind) { return(token => token.Kind == kind); }
private void SwallowToken(StepTokenKind kind) { AssertNextTokenKind(kind); MoveNext(); }
private StepToken(StepTokenKind kind) { Kind = kind; StringBuilder = null; }
public StepToken(StepTokenKind kind, FastStringBuilder value) { Kind = kind; StringBuilder = value; }