1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- <?php
- /*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
- namespace Symfony\Bundle\TwigBundle\Node;
- /**
- * Represents a render node.
- *
- * @author Fabien Potencier <fabien@symfony.com>
- */
- class RenderNode extends \Twig_Node
- {
- public function __construct(\Twig_Node_Expression $expr, \Twig_Node_Expression $attributes, \Twig_Node_Expression $options, $lineno, $tag = null)
- {
- parent::__construct(array('expr' => $expr, 'attributes' => $attributes, 'options' => $options), array(), $lineno, $tag);
- }
- /**
- * Compiles the node to PHP.
- *
- * @param \Twig_Compiler $compiler A Twig_Compiler instance
- */
- public function compile(\Twig_Compiler $compiler)
- {
- $compiler
- ->addDebugInfo($this)
- ->write("echo \$this->env->getExtension('actions')->renderAction(")
- ->subcompile($this->getNode('expr'))
- ->raw(', ')
- ->subcompile($this->getNode('attributes'))
- ->raw(', ')
- ->subcompile($this->getNode('options'))
- ->raw(");\n")
- ;
- }
- }
|