public function RenderContext::bubble in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/lib/Drupal/Core/Render/RenderContext.php \Drupal\Core\Render\RenderContext::bubble()
Bubbles the stack.
Whenever another level in the render array has been rendered, the stack must be bubbled, to merge its rendering metadata with that of the parent element.
File
- core/
lib/ Drupal/ Core/ Render/ RenderContext.php, line 47 - Contains \Drupal\Core\Render\RenderContext.
Class
- RenderContext
- The render context: a stack containing bubbleable rendering metadata.
Namespace
Drupal\Core\RenderCode
public function bubble() {
// If there's only one frame on the stack, then this is the root call, and
// we can't bubble up further. ::renderRoot() will reset the stack, but we
// must not reset it here to allow users of ::executeInRenderContext() to
// access the stack directly.
if ($this
->count() === 1) {
return;
}
// Merge the current and the parent stack frame.
$current = $this
->pop();
$parent = $this
->pop();
$this
->push($current
->merge($parent));
}