public function parse()
{
$string = '';
while (TRUE) {
$token = $this->read(array(Scanner\Token::STRING_CHARACTERS, Scanner\Token::STRING_ESCAPED_CHARACTER, Scanner\Token::SINGLEQUOTE_STRING_END, Scanner\Token::DOUBLEQUOTE_STRING_END));
switch ($token->type) {
case Scanner\Token::STRING_CHARACTERS:
$string .= $token->content;
break;
case Scanner\Token::STRING_ESCAPED_CHARACTER:
$string .= substr($token->content, 1);
break;
case Scanner\Token::SINGLEQUOTE_STRING_END:
case Scanner\Token::DOUBLEQUOTE_STRING_END:
return $string;
}
}
return $string;
}