leftypol/inc/lib/Twig/Node/Expression/Parent.php

45 lines
1.2 KiB
PHP
Raw Normal View History

2011-10-05 04:22:53 +00:00
<?php
/*
* This file is part of Twig.
*
* (c) Fabien Potencier
* (c) Armin Ronacher
2011-10-05 04:22:53 +00:00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/**
* Represents a parent node.
*
2013-08-01 19:20:12 +00:00
* @author Fabien Potencier <fabien@symfony.com>
2011-10-05 04:22:53 +00:00
*/
class Twig_Node_Expression_Parent extends Twig_Node_Expression
{
public function __construct($name, $lineno, $tag = null)
{
2013-08-01 19:20:12 +00:00
parent::__construct(array(), array('output' => false, 'name' => $name), $lineno, $tag);
2011-10-05 04:22:53 +00:00
}
public function compile(Twig_Compiler $compiler)
{
2013-08-01 19:20:12 +00:00
if ($this->getAttribute('output')) {
$compiler
->addDebugInfo($this)
->write('$this->displayParentBlock(')
2013-08-01 19:20:12 +00:00
->string($this->getAttribute('name'))
->raw(", \$context, \$blocks);\n")
;
} else {
$compiler
->raw('$this->renderParentBlock(')
2013-08-01 19:20:12 +00:00
->string($this->getAttribute('name'))
->raw(', $context, $blocks)')
2013-08-01 19:20:12 +00:00
;
}
2011-10-05 04:22:53 +00:00
}
}
class_alias('Twig_Node_Expression_Parent', 'Twig\Node\Expression\ParentExpression', false);