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
12namespace Twig\Sandbox;
13
14/**
15 * Exception thrown when a not allowed filter is used in a template.
16 *
17 * @author Martin Hasoň <martin.hason@gmail.com>
18 *
19 * @final
20 */
21class SecurityNotAllowedFilterError extends SecurityError
22{
23    private $filterName;
24
25    public function __construct(string $message, string $functionName, int $lineno = -1, string $filename = null, \Exception $previous = null)
26    {
27        if (-1 !== $lineno) {
28            @trigger_error(sprintf('Passing $lineno as a 3th argument of the %s constructor is deprecated since Twig 2.8.1.', __CLASS__), \E_USER_DEPRECATED);
29        }
30        if (null !== $filename) {
31            @trigger_error(sprintf('Passing $filename as a 4th argument of the %s constructor is deprecated since Twig 2.8.1.', __CLASS__), \E_USER_DEPRECATED);
32        }
33        if (null !== $previous) {
34            @trigger_error(sprintf('Passing $previous as a 5th argument of the %s constructor is deprecated since Twig 2.8.1.', __CLASS__), \E_USER_DEPRECATED);
35        }
36        parent::__construct($message, $lineno, $filename, $previous);
37        $this->filterName = $functionName;
38    }
39
40    public function getFilterName()
41    {
42        return $this->filterName;
43    }
44}
45
46class_alias('Twig\Sandbox\SecurityNotAllowedFilterError', 'Twig_Sandbox_SecurityNotAllowedFilterError');
47