Method.php (1176B)
1 <?php 2 3 /* 4 * This file is part of Twig. 5 * 6 * (c) 2009 Fabien Potencier 7 * (c) 2010 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', $this->extension->getName(), $this->method); 42 } 43 }