public function convertWhiteSpaceToRange(Scope $head, Scope $result, Lexer $lexer) { if ($lexer->isNextToken(Lexer::T_SHORT_S)) { # spaces, tabs, and line breaks #0009 #0010 #0012 #0013 #0032 $head->addLiteral(chr(9)); $head->addLiteral(chr(10)); $head->addLiteral(chr(12)); $head->addLiteral(chr(13)); $head->addLiteral(chr(32)); } else { # not spaces, tabs, and line breaks #0000-0008 #0011 #0014 - #0031 for ($i = 0; $i <= 8; $i++) { $head->addLiteral(chr($i)); } $head->addLiteral(chr(11)); for ($i = 14; $i <= 31; $i++) { $head->addLiteral(chr($i)); } } }
/** * Parse the current token for new Quantifiers * * @access public * @return ReverseRegex\Generator\Scope a new head * @param ReverseRegex\Generator\LiteralScope $head * @param ReverseRegex\Generator\Scope $set * @param ReverseRegex\Lexer $lexer */ public function parse(Scope $head, Scope $set, Lexer $lexer) { $character = $this->evaluate($lexer); $head->addLiteral($character); return $head; }