public function parse(Lexer $lexer) { while ($lexer->moveNext()) { if ($lexer->isNextToken(Lexer::T_OPEN_BRACKET) === true) { $tagData = $this->parseTag($lexer); return $this->mapObject($tagData); } } return null; }