TokenStream
final class TokenStream
TokenStream loads tokens from $source iterator on-demand, and places them in a buffer to provide access to any previous token by index.
Methods
Tells whether the token at current position is of given kind.
Gets the token at $offset from the current position.
Consumes the current token (if is of given kind) or throws exception on end.
Consumes the current token of given kind or returns null.
Sets the input cursor to the position.
Returns the cursor position.
No description
Details
at line 27
__construct(Iterator $source)
No description
at line 36
bool
is(int|string ...$kind)
Tells whether the token at current position is of given kind.
at line 45
Token|null
peek(int $offset = 0)
Gets the token at $offset from the current position.
at line 66
Token
consume(int|string ...$kind)
Consumes the current token (if is of given kind) or throws exception on end.
at line 82
Token|null
tryConsume(int|string ...$kind)
Consumes the current token of given kind or returns null.
at line 97
void
seek(int $index)
Sets the input cursor to the position.
at line 109
int
getIndex()
Returns the cursor position.
at line 119
void
throwUnexpectedException(array $expected = [], string $addendum = '', string $excerpt = '')
No description