class Twig_Node_Expression_Function in Zircon Profile 8
Same name and namespace in other branches
- 8.0 vendor/twig/twig/lib/Twig/Node/Expression/Function.php \Twig_Node_Expression_Function
Hierarchy
- class \Twig_Node implements Twig_NodeInterface
- class \Twig_Node_Expression
- class \Twig_Node_Expression_Call
- class \Twig_Node_Expression
Expanded class hierarchy of Twig_Node_Expression_Function
2 string references to 'Twig_Node_Expression_Function'
- Twig_ExpressionParser::getFunctionNodeClass in vendor/
twig/ twig/ lib/ Twig/ ExpressionParser.php - Twig_SimpleFunction::__construct in vendor/
twig/ twig/ lib/ Twig/ SimpleFunction.php
File
- vendor/
twig/ twig/ lib/ Twig/ Node/ Expression/ Function.php, line 11
View source
class Twig_Node_Expression_Function extends Twig_Node_Expression_Call {
public function __construct($name, Twig_NodeInterface $arguments, $lineno) {
parent::__construct(array(
'arguments' => $arguments,
), array(
'name' => $name,
), $lineno);
}
public function compile(Twig_Compiler $compiler) {
$name = $this
->getAttribute('name');
$function = $compiler
->getEnvironment()
->getFunction($name);
$this
->setAttribute('name', $name);
$this
->setAttribute('type', 'function');
$this
->setAttribute('thing', $function);
$this
->setAttribute('needs_environment', $function
->needsEnvironment());
$this
->setAttribute('needs_context', $function
->needsContext());
$this
->setAttribute('arguments', $function
->getArguments());
if ($function instanceof Twig_FunctionCallableInterface || $function instanceof Twig_SimpleFunction) {
$this
->setAttribute('callable', $function
->getCallable());
}
if ($function instanceof Twig_SimpleFunction) {
$this
->setAttribute('is_variadic', $function
->isVariadic());
}
$this
->compileCallable($compiler);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
Twig_Node:: |
protected | property | ||
Twig_Node:: |
protected | property | ||
Twig_Node:: |
protected | property | ||
Twig_Node:: |
protected | property | ||
Twig_Node:: |
public | function | ||
Twig_Node:: |
public | function | Gets an attribute value by name. | |
Twig_Node:: |
public | function | ||
Twig_Node:: |
public | function |
Overrides Twig_NodeInterface:: |
|
Twig_Node:: |
public | function | Gets a node by name. | |
Twig_Node:: |
public | function |
Overrides Twig_NodeInterface:: |
|
Twig_Node:: |
public | function | Returns true if the attribute is defined. | |
Twig_Node:: |
public | function | Returns true if the node with the given name exists. | |
Twig_Node:: |
public | function | Removes an attribute by name. | |
Twig_Node:: |
public | function | Removes a node by name. | |
Twig_Node:: |
public | function | Sets an attribute by name to a value. | |
Twig_Node:: |
public | function | Sets a node. | |
Twig_Node:: |
public | function | ||
Twig_Node:: |
public | function | ||
Twig_Node_Expression_Call:: |
protected | function | ||
Twig_Node_Expression_Call:: |
protected | function | ||
Twig_Node_Expression_Call:: |
protected | function | 1 | |
Twig_Node_Expression_Call:: |
protected | function | ||
Twig_Node_Expression_Function:: |
public | function |
Compiles the node to PHP. Overrides Twig_Node:: |
|
Twig_Node_Expression_Function:: |
public | function |
Constructor. Overrides Twig_Node:: |