Class LexerExtensionContext
Context object passed to lexer extensions.
public sealed class LexerExtensionContext
- Inheritance
-
LexerExtensionContext
- Inherited Members
- Extension Methods
Constructors
LexerExtensionContext(ParserDefinition, TextReaderLookahead, IReadOnlyList<Token>, string)
Initializes a new context.
public LexerExtensionContext(ParserDefinition definition, TextReaderLookahead input, IReadOnlyList<Token> emittedTokens, string currentMode)
Parameters
definitionParserDefinitioninputTextReaderLookaheademittedTokensIReadOnlyList<Token>currentModestring
Properties
Column
Current column.
public int Column { get; }
Property Value
CurrentMode
Current lexer mode.
public string CurrentMode { get; }
Property Value
Definition
Current parser definition.
public ParserDefinition Definition { get; }
Property Value
EmittedTokens
Already emitted tokens.
public IReadOnlyList<Token> EmittedTokens { get; }
Property Value
Input
Forward-only input lookahead.
public TextReaderLookahead Input { get; }
Property Value
Line
Current line.
public int Line { get; }
Property Value
Position
Current absolute input position.
public int Position { get; }
Property Value
Methods
IsTokenDeclared(string)
Returns true when token exists in tokens { ... }.
public bool IsTokenDeclared(string tokenName)
Parameters
tokenNamestring
Returns
IsTokenKnown(string)
Returns true when token is declared or backed by lexer rule.
public bool IsTokenKnown(string tokenName)
Parameters
tokenNamestring