parser; $stream = $parser->getStream(); $view = $parser->getExpressionParser()->parseExpression(); $variablesOverride = new Twig_Node_Expression_Array(array(), $token->getLine()); if ($stream->test(Twig_Token::NAME_TYPE, 'with')) { $stream->next(); $variablesOverride->addElement($this->parser->getExpressionParser()->parseExpression()); } $stream->expect(Twig_Token::BLOCK_END_TYPE); $viewTemplateExpr = new Twig_Node_Expression_MethodCall( $view, 'getTemplateFile', new Twig_Node_Expression_Array(array(), $token->getLine()), $token->getLine() ); $variablesExpr = new Twig_Node_Expression_MethodCall( $view, 'getTemplateVars', $variablesOverride, $token->getLine() ); return new Twig_Node_Include( $viewTemplateExpr, $variablesExpr, $only = false, $ignoreMissing = false, $token->getLine() ); } /** * Returns the tag identifier. * * @return string */ public function getTag() { return 'render'; } }