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 30
__construct(Iterator $source)
No description
at line 39
bool
is(int|string ...$kind)
Tells whether the token at current position is of given kind.
at line 48
Token|null
peek(int $offset = 0)
Gets the token at $offset from the current position.
at line 69
Token
consume(int|string ...$kind)
Consumes the current token (if is of given kind) or throws exception on end.
at line 85
Token|null
tryConsume(int|string ...$kind)
Consumes the current token of given kind or returns null.
at line 100
void
seek(int $index)
Sets the input cursor to the position.
at line 112
int
getIndex()
Returns the cursor position.
at line 122
void
throwUnexpectedException(array $expected = [], string $addendum = '')
No description
Traits
Better OOP experience.