TokenStream
final class TokenStream
Lazy token buffer over an iterator with random-access peek and consume operations.
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 24
__construct(Iterator $source)
No description
at line 33
bool
is(int|string ...$kind)
Tells whether the token at current position is of given kind.
at line 42
Token
peek(int $offset = 0)
Gets the token at $offset from the current position or throws.
at line 51
Token|null
tryPeek(int $offset = 0)
Gets the token at $offset from the current position.
at line 72
Token
consume(int|string ...$kind)
Consumes the current token (if is of given kind) or throws exception on end.
at line 88
Token|null
tryConsume(int|string ...$kind)
Consumes the current token of given kind or returns null.
at line 103
void
seek(int $index)
Sets the input cursor to the position.
at line 115
int
getIndex()
Returns the cursor position.
at line 125
never
throwUnexpectedException(array $expected = [], string $addendum = '', string $excerpt = '')
No description