public function Twig_TokenParser_Import::parse in Zircon Profile 8.0
Same name and namespace in other branches
- 8 vendor/twig/twig/lib/Twig/TokenParser/Import.php \Twig_TokenParser_Import::parse()
Parses a token and returns a node.
Parameters
Twig_Token $token A Twig_Token instance:
Return value
Twig_NodeInterface A Twig_NodeInterface instance
Throws
Overrides Twig_TokenParserInterface::parse
File
- vendor/
twig/ twig/ lib/ Twig/ TokenParser/ Import.php, line 21
Class
- Twig_TokenParser_Import
- Imports macros.
Code
public function parse(Twig_Token $token) {
$macro = $this->parser
->getExpressionParser()
->parseExpression();
$this->parser
->getStream()
->expect('as');
$var = new Twig_Node_Expression_AssignName($this->parser
->getStream()
->expect(Twig_Token::NAME_TYPE)
->getValue(), $token
->getLine());
$this->parser
->getStream()
->expect(Twig_Token::BLOCK_END_TYPE);
$this->parser
->addImportedSymbol('template', $var
->getAttribute('name'));
return new Twig_Node_Import($macro, $var, $token
->getLine(), $this
->getTag());
}