![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mautic.corals.io/vendor/twig/twig/src/Extension/ |
<?php /* * This file is part of Twig. * * (c) Fabien Potencier * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Twig\Extension; use Twig\NodeVisitor\NodeVisitorInterface; use Twig\TokenParser\TokenParserInterface; use Twig\TwigFilter; use Twig\TwigFunction; use Twig\TwigTest; /** * Used by \Twig\Environment as a staging area. * * @author Fabien Potencier <[email protected]> * * @internal */ final class StagingExtension extends AbstractExtension { private $functions = []; private $filters = []; private $visitors = []; private $tokenParsers = []; private $tests = []; public function addFunction(TwigFunction $function): void { if (isset($this->functions[$function->getName()])) { throw new \LogicException(\sprintf('Function "%s" is already registered.', $function->getName())); } $this->functions[$function->getName()] = $function; } public function getFunctions(): array { return $this->functions; } public function addFilter(TwigFilter $filter): void { if (isset($this->filters[$filter->getName()])) { throw new \LogicException(\sprintf('Filter "%s" is already registered.', $filter->getName())); } $this->filters[$filter->getName()] = $filter; } public function getFilters(): array { return $this->filters; } public function addNodeVisitor(NodeVisitorInterface $visitor): void { $this->visitors[] = $visitor; } public function getNodeVisitors(): array { return $this->visitors; } public function addTokenParser(TokenParserInterface $parser): void { if (isset($this->tokenParsers[$parser->getTag()])) { throw new \LogicException(\sprintf('Tag "%s" is already registered.', $parser->getTag())); } $this->tokenParsers[$parser->getTag()] = $parser; } public function getTokenParsers(): array { return $this->tokenParsers; } public function addTest(TwigTest $test): void { if (isset($this->tests[$test->getName()])) { throw new \LogicException(\sprintf('Test "%s" is already registered.', $test->getName())); } $this->tests[$test->getName()] = $test; } public function getTests(): array { return $this->tests; } }