ExpressionLanguage.php 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <?php
  2. /*
  3. * This file is part of the Symfony package.
  4. *
  5. * (c) Fabien Potencier <fabien@symfony.com>
  6. *
  7. * For the full copyright and license information, please view the LICENSE
  8. * file that was distributed with this source code.
  9. */
  10. namespace Symfony\Component\DependencyInjection;
  11. use Psr\Cache\CacheItemPoolInterface;
  12. use Symfony\Component\ExpressionLanguage\ExpressionLanguage as BaseExpressionLanguage;
  13. if (!class_exists(BaseExpressionLanguage::class)) {
  14. return;
  15. }
  16. /**
  17. * Adds some function to the default ExpressionLanguage.
  18. *
  19. * @author Fabien Potencier <fabien@symfony.com>
  20. *
  21. * @see ExpressionLanguageProvider
  22. */
  23. class ExpressionLanguage extends BaseExpressionLanguage
  24. {
  25. /**
  26. * {@inheritdoc}
  27. */
  28. public function __construct(CacheItemPoolInterface $cache = null, array $providers = [], callable $serviceCompiler = null)
  29. {
  30. // prepend the default provider to let users override it easily
  31. array_unshift($providers, new ExpressionLanguageProvider($serviceCompiler));
  32. parent::__construct($cache, $providers);
  33. }
  34. }