[ Index ]

PHP Cross Reference of phpBB-3.3.14-deutsch

title

Body

[close]

/vendor/twig/twig/src/Node/Expression/ -> TestExpression.php (source)

   1  <?php
   2  
   3  /*
   4   * This file is part of Twig.
   5   *
   6   * (c) Fabien Potencier
   7   *
   8   * For the full copyright and license information, please view the LICENSE
   9   * file that was distributed with this source code.
  10   */
  11  
  12  namespace Twig\Node\Expression;
  13  
  14  use Twig\Compiler;
  15  use Twig\Node\Node;
  16  
  17  class TestExpression extends CallExpression
  18  {
  19      public function __construct(Node $node, string $name, ?Node $arguments, int $lineno)
  20      {
  21          $nodes = ['node' => $node];
  22          if (null !== $arguments) {
  23              $nodes['arguments'] = $arguments;
  24          }
  25  
  26          parent::__construct($nodes, ['name' => $name], $lineno);
  27      }
  28  
  29      public function compile(Compiler $compiler)
  30      {
  31          $name = $this->getAttribute('name');
  32          $test = $compiler->getEnvironment()->getTest($name);
  33  
  34          $this->setAttribute('name', $name);
  35          $this->setAttribute('type', 'test');
  36          $this->setAttribute('arguments', $test->getArguments());
  37          $this->setAttribute('callable', $test->getCallable());
  38          $this->setAttribute('is_variadic', $test->isVariadic());
  39  
  40          $this->compileCallable($compiler);
  41      }
  42  }
  43  
  44  class_alias('Twig\Node\Expression\TestExpression', 'Twig_Node_Expression_Test');


Generated: Mon Nov 25 19:05:08 2024 Cross-referenced by PHPXref 0.7.1