summaryrefslogtreecommitdiff
path: root/inc/lib/Twig/Extension/StringLoader.php
diff options
context:
space:
mode:
authorBenjamin Southall <applemansigloo@gmail.com>2019-02-26 10:11:12 +1000
committerBenjamin Southall <applemansigloo@gmail.com>2019-02-26 10:11:12 +1000
commitf79395851b044689567e0e6c9504acbcaa742782 (patch)
treeee539aee9ffa90e8accd6f130b30a8ebed7a232e /inc/lib/Twig/Extension/StringLoader.php
parent28f32baf0125ca5085266e73dc5071e5814d8e3b (diff)
Twig update to latest Twig 1.x legacy as per vichan
Diffstat (limited to 'inc/lib/Twig/Extension/StringLoader.php')
-rw-r--r--inc/lib/Twig/Extension/StringLoader.php37
1 files changed, 10 insertions, 27 deletions
diff --git a/inc/lib/Twig/Extension/StringLoader.php b/inc/lib/Twig/Extension/StringLoader.php
index 5e1a60d0..2ce3c992 100644
--- a/inc/lib/Twig/Extension/StringLoader.php
+++ b/inc/lib/Twig/Extension/StringLoader.php
@@ -3,16 +3,17 @@
/*
* This file is part of Twig.
*
- * (c) 2012 Fabien Potencier
+ * (c) Fabien Potencier
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
+
+/**
+ * @final
+ */
class Twig_Extension_StringLoader extends Twig_Extension
{
- /**
- * {@inheritdoc}
- */
public function getFunctions()
{
return array(
@@ -20,9 +21,6 @@ class Twig_Extension_StringLoader extends Twig_Extension
);
}
- /**
- * {@inheritdoc}
- */
public function getName()
{
return 'string_loader';
@@ -37,28 +35,13 @@ class Twig_Extension_StringLoader extends Twig_Extension
* </pre>
*
* @param Twig_Environment $env A Twig_Environment instance
- * @param string $template A template as a string
+ * @param string $template A template as a string or object implementing __toString()
*
- * @return Twig_Template A Twig_Template instance
+ * @return Twig_Template
*/
function twig_template_from_string(Twig_Environment $env, $template)
{
- $name = sprintf('__string_template__%s', hash('sha256', uniqid(mt_rand(), true), false));
-
- $loader = new Twig_Loader_Chain(array(
- new Twig_Loader_Array(array($name => $template)),
- $current = $env->getLoader(),
- ));
-
- $env->setLoader($loader);
- try {
- $template = $env->loadTemplate($name);
- } catch (Exception $e) {
- $env->setLoader($current);
-
- throw $e;
- }
- $env->setLoader($current);
-
- return $template;
+ return $env->createTemplate((string) $template);
}
+
+class_alias('Twig_Extension_StringLoader', 'Twig\Extension\StringLoaderExtension', false);