4299e11815e28b2060ad3feae9ea953049a3920f
[yaffs-website] / vendor / twig / twig / lib / Twig / Function / Method.php
1 <?php
2
3 /*
4  * This file is part of Twig.
5  *
6  * (c) Fabien Potencier
7  * (c) Arnaud Le Blanc
8  *
9  * For the full copyright and license information, please view the LICENSE
10  * file that was distributed with this source code.
11  */
12
13 @trigger_error('The Twig_Function_Method class is deprecated since version 1.12 and will be removed in 2.0. Use Twig_SimpleFunction instead.', E_USER_DEPRECATED);
14
15 /**
16  * Represents a method template function.
17  *
18  * Use Twig_SimpleFunction instead.
19  *
20  * @author Arnaud Le Blanc <arnaud.lb@gmail.com>
21  *
22  * @deprecated since 1.12 (to be removed in 2.0)
23  */
24 class Twig_Function_Method extends Twig_Function
25 {
26     protected $extension;
27     protected $method;
28
29     public function __construct(Twig_ExtensionInterface $extension, $method, array $options = array())
30     {
31         $options['callable'] = array($extension, $method);
32
33         parent::__construct($options);
34
35         $this->extension = $extension;
36         $this->method = $method;
37     }
38
39     public function compile()
40     {
41         return sprintf('$this->env->getExtension(\'%s\')->%s', get_class($this->extension), $this->method);
42     }
43 }