function ModuleNode::compileGetParent
1 call to ModuleNode::compileGetParent()
- ModuleNode::compileTemplate in vendor/
twig/ twig/ src/ Node/ ModuleNode.php
File
-
vendor/
twig/ twig/ src/ Node/ ModuleNode.php, line 110
Class
- ModuleNode
- Represents a module node.
Namespace
Twig\NodeCode
protected function compileGetParent(Compiler $compiler) {
if (!$this->hasNode('parent')) {
return;
}
$parent = $this->getNode('parent');
$compiler->write("protected function doGetParent(array \$context): bool|string|Template|TemplateWrapper\n", "{\n")
->indent()
->addDebugInfo($parent)
->write('return ');
if ($parent instanceof ConstantExpression) {
$compiler->subcompile($parent);
}
else {
$compiler->raw('$this->loadTemplate(')
->subcompile($parent)
->raw(', ')
->repr($this->getSourceContext()
->getName())
->raw(', ')
->repr($parent->getTemplateLine())
->raw(')');
}
$compiler->raw(";\n")
->outdent()
->write("}\n\n");
}