public function tokenize($stream = true) { do { $tokens[] = $token = $this->next(); } while ($token->getType() !== Token::EOF); return $stream ? new TokenStream($tokens) : $tokens; }