Source of file Constant.php
Size: 1,130 Bytes - Last Modified: 2013-06-06T08:06:01+02:00
/home/theseer/Downloads/Symfony/vendor/twig/twig/lib/Twig/Node/Expression/Test/Constant.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | <?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> * * @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(') ; if ($this->getNode('arguments')->hasNode(1)) { $compiler ->raw('get_class(') ->subcompile($this->getNode('arguments')->getNode(1)) ->raw(')."::".') ; } $compiler ->subcompile($this->getNode('arguments')->getNode(0)) ->raw('))') ; } } |