function RendererInterface::addCacheableDependency

Same name in other branches
  1. 8.9.x core/lib/Drupal/Core/Render/RendererInterface.php \Drupal\Core\Render\RendererInterface::addCacheableDependency()
  2. 10 core/lib/Drupal/Core/Render/RendererInterface.php \Drupal\Core\Render\RendererInterface::addCacheableDependency()
  3. 11.x core/lib/Drupal/Core/Render/RendererInterface.php \Drupal\Core\Render\RendererInterface::addCacheableDependency()

Adds a dependency on an object: merges its cacheability metadata.

For instance, when a render array depends on some configuration, an entity, or an access result, we must make sure their cacheability metadata is present on the render array. This method makes doing that simple.

Parameters

array &$elements: The render array to update.

\Drupal\Core\Cache\CacheableDependencyInterface|mixed $dependency: The dependency. If the object implements CacheableDependencyInterface, then its cacheability metadata will be used. Otherwise, the passed in object must be assumed to be uncacheable, so max-age 0 is set.

See also

\Drupal\Core\Cache\CacheableMetadata::createFromObject()

1 method overrides RendererInterface::addCacheableDependency()
Renderer::addCacheableDependency in core/lib/Drupal/Core/Render/Renderer.php
Adds a dependency on an object: merges its cacheability metadata.

File

core/lib/Drupal/Core/Render/RendererInterface.php, line 412

Class

RendererInterface
Defines an interface for turning a render array into a string.

Namespace

Drupal\Core\Render

Code

public function addCacheableDependency(array &$elements, $dependency);

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.