Skip to main content

Lexer

Given a Source object, creates a Lexer for that source. A Lexer is a stateful stream generator in that every time it is advanced, it returns the next token in the Source. Assuming the source lexes, the final Token emitted by the lexer will be of kind EOF, after which the lexer will repeatedly return the same EOF token whenever called.

Index

Constructors

constructor

Properties

lastToken

lastToken: Token

The previously focused non-ignored token.

line

line: number

The (1-indexed) line containing the current token.

lineStart

lineStart: number

The character offset at which the current line begins.

source

source: Source

token

token: Token

The currently focused non-ignored token.

Accessors

[toStringTag]

  • get [toStringTag](): string
  • Returns string

Methods

advance

  • Advances the token stream to the next non-ignored token.


    Returns Token

lookahead

  • Looks ahead and returns the next non-ignored token, but does not change the state of Lexer.


    Returns Token