diff options
| author | czaks <marcin@6irc.net> | 2013-08-01 23:43:20 -0400 |
|---|---|---|
| committer | czaks <marcin@6irc.net> | 2013-08-01 23:43:20 -0400 |
| commit | 1ed45ebe9e39724ec70098abfcd267d8ac478511 (patch) | |
| tree | da133b7426dedaf0785f64be752aa0437de7e80a /inc/lib/Twig/Node/Expression/MethodCall.php | |
| parent | dc84ccc6a8e0b6fd3fc626eb1f321e4cf2d05511 (diff) | |
| parent | 40ab2e0c1728fab613bc16a19ab8fcb3fa78c1d4 (diff) | |
Merge branch 'master' of https://github.com/savetheinternet/Tinyboard
Conflicts:
stylesheets/dark.css
stylesheets/futaba+vichan.css
stylesheets/miku.css
stylesheets/stripes.css
stylesheets/testorange.css
stylesheets/wasabi.css
Diffstat (limited to 'inc/lib/Twig/Node/Expression/MethodCall.php')
| -rw-r--r-- | inc/lib/Twig/Node/Expression/MethodCall.php | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/inc/lib/Twig/Node/Expression/MethodCall.php b/inc/lib/Twig/Node/Expression/MethodCall.php new file mode 100644 index 00000000..620b02bf --- /dev/null +++ b/inc/lib/Twig/Node/Expression/MethodCall.php @@ -0,0 +1,41 @@ +<?php + +/* + * This file is part of Twig. + * + * (c) 2012 Fabien Potencier + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ +class Twig_Node_Expression_MethodCall extends Twig_Node_Expression +{ + public function __construct(Twig_Node_Expression $node, $method, Twig_Node_Expression_Array $arguments, $lineno) + { + parent::__construct(array('node' => $node, 'arguments' => $arguments), array('method' => $method, 'safe' => false), $lineno); + + if ($node instanceof Twig_Node_Expression_Name) { + $node->setAttribute('always_defined', true); + } + } + + public function compile(Twig_Compiler $compiler) + { + $compiler + ->subcompile($this->getNode('node')) + ->raw('->') + ->raw($this->getAttribute('method')) + ->raw('(') + ; + $first = true; + foreach ($this->getNode('arguments')->getKeyValuePairs() as $pair) { + if (!$first) { + $compiler->raw(', '); + } + $first = false; + + $compiler->subcompile($pair['value']); + } + $compiler->raw(')'); + } +} |
