12345678910111213141516171819202122232425262728293031323334353637 |
- <?php
-
- /*
- * This file is part of Twig.
- *
- * (c) 2011 Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
- /**
- * Checks if a variable is the exact same value as a constant.
- *
- * <pre>
- * {% if post.status is constant('Post::PUBLISHED') %}
- * the status attribute is exactly the same as Post::PUBLISHED
- * {% endif %}
- * </pre>
- *
- * @package twig
- * @author Fabien Potencier <fabien@symfony.com>
- */
- class Twig_Node_Expression_Test_Constant extends Twig_Node_Expression_Test
- {
- public function compile(Twig_Compiler $compiler)
- {
- $compiler
- ->raw('(')
- ->subcompile($this->getNode('node'))
- ->raw(' === constant(')
- ->subcompile($this->getNode('arguments')->getNode(0))
- ->raw('))')
- ;
- }
- }
|