Twig-1.3.0/lib/Twig/Node/Expression/Conditional.php
changeset 4 9a001a04b634
equal deleted inserted replaced
3:6d109e3804ac 4:9a001a04b634
       
     1 <?php
       
     2 
       
     3 /*
       
     4  * This file is part of Twig.
       
     5  *
       
     6  * (c) 2009 Fabien Potencier
       
     7  * (c) 2009 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 class Twig_Node_Expression_Conditional extends Twig_Node_Expression
       
    13 {
       
    14     public function __construct(Twig_Node_Expression $expr1, Twig_Node_Expression $expr2, Twig_Node_Expression $expr3, $lineno)
       
    15     {
       
    16         parent::__construct(array('expr1' => $expr1, 'expr2' => $expr2, 'expr3' => $expr3), array(), $lineno);
       
    17     }
       
    18 
       
    19     public function compile(Twig_Compiler $compiler)
       
    20     {
       
    21         $compiler
       
    22             ->raw('((')
       
    23             ->subcompile($this->getNode('expr1'))
       
    24             ->raw(') ? (')
       
    25             ->subcompile($this->getNode('expr2'))
       
    26             ->raw(') : (')
       
    27             ->subcompile($this->getNode('expr3'))
       
    28             ->raw('))')
       
    29         ;
       
    30     }
       
    31 }