Conditional.php (933B)
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 }