diff -r 000000000000 -r 7f95f8617b0b vendor/twig/lib/Twig/Node/Expression/Name.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/twig/lib/Twig/Node/Expression/Name.php Sat Sep 24 15:40:41 2011 +0200 @@ -0,0 +1,41 @@ + $name), $lineno); + } + + public function compile(Twig_Compiler $compiler) + { + static $specialVars = array( + '_self' => '$this', + '_context' => '$context', + '_charset' => '$this->env->getCharset()', + ); + + $name = $this->getAttribute('name'); + + if ($this->hasAttribute('is_defined_test')) { + if (isset($specialVars[$name])) { + $compiler->repr(true); + } else { + $compiler->raw('array_key_exists(')->repr($name)->raw(', $context)'); + } + } elseif (isset($specialVars[$name])) { + $compiler->raw($specialVars[$name]); + } else { + $compiler->raw(sprintf('$this->getContext($context, \'%s\')', $name)); + } + } +}