Version 1
[yaffs-website] / vendor / twig / twig / lib / Twig / Node / Expression / Parent.php
1 <?php
2
3 /*
4  * This file is part of Twig.
5  *
6  * (c) Fabien Potencier
7  * (c) Armin Ronacher
8  *
9  * For the full copyright and license information, please view the LICENSE
10  * file that was distributed with this source code.
11  */
12
13 /**
14  * Represents a parent node.
15  *
16  * @author Fabien Potencier <fabien@symfony.com>
17  */
18 class Twig_Node_Expression_Parent extends Twig_Node_Expression
19 {
20     public function __construct($name, $lineno, $tag = null)
21     {
22         parent::__construct(array(), array('output' => false, 'name' => $name), $lineno, $tag);
23     }
24
25     public function compile(Twig_Compiler $compiler)
26     {
27         if ($this->getAttribute('output')) {
28             $compiler
29                 ->addDebugInfo($this)
30                 ->write('$this->displayParentBlock(')
31                 ->string($this->getAttribute('name'))
32                 ->raw(", \$context, \$blocks);\n")
33             ;
34         } else {
35             $compiler
36                 ->raw('$this->renderParentBlock(')
37                 ->string($this->getAttribute('name'))
38                 ->raw(', $context, $blocks)')
39             ;
40         }
41     }
42 }