2011-10-05 06:22:53 +02:00
< ? php
/*
* This file is part of Twig .
*
2018-05-10 12:24:53 +02:00
* ( c ) Fabien Potencier
* ( c ) Arnaud Le Blanc
2011-10-05 06:22:53 +02:00
*
* For the full copyright and license information , please view the LICENSE
* file that was distributed with this source code .
*/
2018-05-10 12:24:53 +02:00
@ 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 );
2011-10-05 06:22:53 +02:00
/**
* Represents a method template function .
*
2013-08-01 21:20:12 +02:00
* Use Twig_SimpleFunction instead .
*
* @ author Arnaud Le Blanc < arnaud . lb @ gmail . com >
2018-05-10 12:24:53 +02:00
*
2013-08-01 21:20:12 +02:00
* @ deprecated since 1.12 ( to be removed in 2.0 )
2011-10-05 06:22:53 +02:00
*/
class Twig_Function_Method extends Twig_Function
{
2013-08-01 21:20:12 +02:00
protected $extension ;
protected $method ;
2011-10-05 06:22:53 +02:00
public function __construct ( Twig_ExtensionInterface $extension , $method , array $options = array ())
{
2013-08-01 21:20:12 +02:00
$options [ 'callable' ] = array ( $extension , $method );
2011-10-05 06:22:53 +02:00
parent :: __construct ( $options );
$this -> extension = $extension ;
$this -> method = $method ;
}
public function compile ()
{
2018-05-10 12:24:53 +02:00
return sprintf ( '$this->env->getExtension(\'%s\')->%s' , get_class ( $this -> extension ), $this -> method );
2011-10-05 06:22:53 +02:00
}
}