12345678910111213141516171819202122232425262728293031323334353637383940 |
- <?php
- /*
- * This file is part of Twig.
- *
- * (c) 2009 Fabien Potencier
- * (c) 2009 Armin Ronacher
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
- /**
- * Represents a block node.
- *
- * @author Fabien Potencier <fabien@symfony.com>
- */
- class Twig_Node_Block extends Twig_Node
- {
- public function __construct($name, Twig_NodeInterface $body, $lineno, $tag = null)
- {
- parent::__construct(array('body' => $body), array('name' => $name), $lineno, $tag);
- }
- public function compile(Twig_Compiler $compiler)
- {
- $compiler
- ->addDebugInfo($this)
- ->write(sprintf("public function block_%s(\$context, array \$blocks = array())\n", $this->getAttribute('name')), "{\n")
- ->indent()
- ;
- $compiler
- ->subcompile($this->getNode('body'))
- ->outdent()
- ->write("}\n\n")
- ;
- }
- }
|