Fix the registration of simple filters, test and functions

This commit is contained in:
Markus Bachmann
2012-12-18 10:57:02 +01:00
parent 6c01c14fd8
commit a311fe0017
+15
View File
@@ -761,6 +761,11 @@ class Twig_Environment
throw new LogicException('A filter must be an instance of Twig_FilterInterface or Twig_SimpleFilter');
}
if ($name instanceof Twig_SimpleFilter) {
$filter = $name;
$name = $filter->getName();
}
$this->staging->addFilter($name, $filter);
}
@@ -845,6 +850,11 @@ class Twig_Environment
throw new LogicException('A test must be an instance of Twig_TestInterface or Twig_SimpleTest');
}
if ($name instanceof Twig_SimpleTest) {
$test = $name;
$name = $test->getName();
}
$this->staging->addTest($name, $test);
}
@@ -878,6 +888,11 @@ class Twig_Environment
throw new LogicException('A function must be an instance of Twig_FunctionInterface or Twig_SimpleFunction');
}
if ($name instanceof Twig_SimpleFunction) {
$function = $name;
$name = $function->getName();
}
$this->staging->addFunction($name, $function);
}