function Template::loadTemplate
Parameters
string|TemplateWrapper|array<string|TemplateWrapper> $template:
1 call to Template::loadTemplate()
- Template::getParent in vendor/
twig/ twig/ src/ Template.php - Returns the parent template.
File
-
vendor/
twig/ twig/ src/ Template.php, line 273
Class
- Template
- Default base class for compiled templates.
Namespace
TwigCode
protected function loadTemplate($template, $templateName = null, $line = null, $index = null) : self|TemplateWrapper {
try {
if (\is_array($template)) {
return $this->env
->resolveTemplate($template);
}
if ($template instanceof TemplateWrapper) {
return $template;
}
if ($template instanceof self) {
trigger_deprecation('twig/twig', '3.9', 'Passing a "%s" instance to "%s" is deprecated.', self::class, __METHOD__);
return $template;
}
if ($template === $this->getTemplateName()) {
$class = static::class;
if (false !== ($pos = strrpos($class, '___', -1))) {
$class = substr($class, 0, $pos);
}
}
else {
$class = $this->env
->getTemplateClass($template);
}
return $this->env
->loadTemplate($class, $template, $index);
} catch (Error $e) {
if (!$e->getSourceContext()) {
$e->setSourceContext($templateName ? new Source('', $templateName) : $this->getSourceContext());
}
if ($e->getTemplateLine() > 0) {
throw $e;
}
if (!$line) {
$e->guess();
}
else {
$e->setTemplateLine($line);
}
throw $e;
}
}