composer package updates
[openemr.git] / vendor / twig / twig / lib / Twig / Node / Expression / Binary / EndsWith.php
blob85c52937665ed5707f5b19de4c46dbb1f78c8258
1 <?php
3 /*
4 * This file is part of Twig.
6 * (c) Fabien Potencier
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
11 class Twig_Node_Expression_Binary_EndsWith extends Twig_Node_Expression_Binary
13 public function compile(Twig_Compiler $compiler)
15 $left = $compiler->getVarName();
16 $right = $compiler->getVarName();
17 $compiler
18 ->raw(sprintf('(is_string($%s = ', $left))
19 ->subcompile($this->getNode('left'))
20 ->raw(sprintf(') && is_string($%s = ', $right))
21 ->subcompile($this->getNode('right'))
22 ->raw(sprintf(') && (\'\' === $%2$s || $%2$s === substr($%1$s, -strlen($%2$s))))', $left, $right))
26 public function operator(Twig_Compiler $compiler)
28 return $compiler->raw('');
32 class_alias('Twig_Node_Expression_Binary_EndsWith', 'Twig\Node\Expression\Binary\EndsWithBinary', false);