public static function parse(ParserInterface $parser) { if ($parser->accept(Token::T_STRING)) { $parser->insert(new static($parser->getCurrentToken()->getValue())); $parser->advance(); return true; } return false; }
public static function parse(ParserInterface $parser) { $parser->insert(new static()); $parser->traverseUp(); if (ExpressionNode::parse($parser)) { if ($parser->skip(Token::T_SYMBOL, ',')) { self::parse($parser); } } $parser->traverseDown(); return true; }
public static function parse(ParserInterface $parser) { if ($parser->accept(Token::T_IDENT, 'not') || $parser->accept(Token::T_IDENT, 'or') || $parser->accept(Token::T_IDENT, 'and') || $parser->accept(Token::T_IDENT, 'equals')) { $parser->insert(new static($parser->getCurrentToken()->getValue())); $parser->advance(); return true; } return false; }
public static function parse(ParserInterface $parser) { if ($parser->accept(Token::T_IDENT) && $parser->acceptNext(Token::T_SYMBOL, '(')) { $parser->insert(new static($parser->getCurrentToken()->getValue())); $parser->advance(); $parser->skip(Token::T_SYMBOL, '('); $parser->traverseUp(); ArgumentListNode::parse($parser); $parser->skip(Token::T_SYMBOL, ')'); $parser->traverseDown(); return true; } return false; }
public static function parse(ParserInterface $parser) { if ($parser->accept(Token::T_IDENT, 'if')) { $parser->insert(new static()); $parser->advance(); $parser->traverseUp(); if (ConditionNode::parse($parser)) { $parser->setAttribute(); } $parser->skip(Token::T_CLOSING_TAG); $parser->parseOutsideTag(); if (ElseNode::parse($parser)) { $parser->parseOutsideTag(); } if (ElseIfNode::parse($parser)) { $parser->parseOutsideTag(); } $parser->skip(Token::T_OPENING_TAG); $parser->skip(Token::T_IDENT, '/if'); $parser->skip(Token::T_CLOSING_TAG); $parser->traverseDown(); $parser->parseOutsideTag(); return true; } return false; }
public static function parse(ParserInterface $parser) { if ($parser->accept(Token::T_IDENT, 'raw') || $parser->accept(Token::T_IDENT, 'r')) { $parser->insert(new static()); $parser->advance(); $parser->traverseUp(); if (ExpressionNode::parse($parser)) { $parser->setAttribute(); } $parser->skip(Token::T_CLOSING_TAG); $parser->traverseDown(); $parser->parseOutsideTag(); } }
public static function parse(ParserInterface $parser) { if ($parser->accept(Token::T_IDENT, 'else')) { $parser->insert(new static()); $parser->advance(); $parser->expect(Token::T_CLOSING_TAG); $parser->advance(); return true; } return false; }
public static function parse(ParserInterface $parser) { if ($parser->accept(Token::T_SYMBOL, '[')) { $parser->insert(new static()); $parser->traverseUp(); $parser->advance(); ArgumentListNode::parse($parser); $parser->expect(Token::T_SYMBOL, ']'); $parser->advance(); $parser->traverseDown(); return true; } return false; }
public static function parse(ParserInterface $parser) { if ($parser->accept(Token::T_IDENT, 'extends')) { $parser->insert(new static()); $parser->advance(); $parser->traverseUp(); ExpressionNode::parse($parser); $parser->setAttribute(); $parser->skip(Token::T_CLOSING_TAG); $parser->parseOutsideTag(); $parser->skip(Token::T_OPENING_TAG); $parser->skip(Token::T_IDENT, '/extends'); $parser->skip(Token::T_CLOSING_TAG); $parser->traverseDown(); $parser->parseOutsideTag(); return true; } return false; }
public static function parse(ParserInterface $parser) { if ($parser->accept(Token::T_IDENT, 'block')) { $parser->insert(new static()); $parser->advance(); $parser->traverseUp(); ExpressionNode::parse($parser); $parser->setAttribute(); if ($parser->accept(Token::T_IDENT, 'prepend') || $parser->accept(Token::T_IDENT, 'append')) { $parser->insert(new OptionNode($parser->getCurrentToken()->getValue())); $parser->setAttribute(); $parser->advance(); } $parser->skip(Token::T_CLOSING_TAG); $parser->parseOutsideTag(); $parser->skip(Token::T_OPENING_TAG); $parser->skip(Token::T_IDENT, '/block'); $parser->skip(Token::T_CLOSING_TAG); $parser->traverseDown(); $parser->parseOutsideTag(); return true; } return false; }
public static function parse(ParserInterface $parser) { if ($parser->accept(Token::T_IDENT, 'for')) { $parser->insert(new static()); $parser->advance(); $parser->traverseUp(); if ($parser->accept(Token::T_VAR)) { // T_VAR as first attribute $parser->insert(new VariableNode($parser->getCurrentToken()->getValue())); $parser->setAttribute(); $parser->advance(); $parser->expect(Token::T_IDENT, 'in'); $parser->advance(); ExpressionNode::parse($parser); $parser->setAttribute(); } elseif ($parser->accept(Token::T_NUMBER)) { // T_NUMBER as first attribute $parser->insert(new NumberNode($parser->getCurrentToken()->getValue())); $parser->setAttribute(); $parser->advance(); $parser->expect(Token::T_IDENT, 'to'); $parser->advance(); if ($parser->expect(Token::T_NUMBER)) { $parser->insert(new NumberNode($parser->getCurrentToken()->getValue())); $parser->setAttribute(); $parser->advance(); if ($parser->accept(Token::T_IDENT, 'as')) { $parser->advance(); $parser->expect(Token::T_VAR); $parser->insert(new VariableNode($parser->getCurrentToken()->getValue())); $parser->setAttribute(); $parser->advance(); } } } $parser->skip(Token::T_CLOSING_TAG); $parser->parseOutsideTag(); $parser->skip(Token::T_OPENING_TAG); $parser->skip(Token::T_IDENT, '/for'); $parser->skip(Token::T_CLOSING_TAG); $parser->traverseDown(); $parser->parseOutsideTag(); return true; } return false; }