diff core/themes/engines/twig/twig.engine @ 5:12f9dff5fda9 tip

Update to Drupal core 8.7.1
author Chris Cannam
date Thu, 09 May 2019 15:34:47 +0100
parents c75dbcec494b
children
line wrap: on
line diff
--- a/core/themes/engines/twig/twig.engine	Thu Feb 28 13:11:55 2019 +0000
+++ b/core/themes/engines/twig/twig.engine	Thu May 09 15:34:47 2019 +0100
@@ -133,20 +133,14 @@
  *
  * @return array
  *   The filtered renderable array.
+ *
+ * @deprecated in Drupal 8.7.x and will be removed before 9.0.0. Use
+ *   \Drupal\Core\Template\TwigExtension::withoutFilter() instead.
  */
 function twig_without($element) {
-  if ($element instanceof ArrayAccess) {
-    $filtered_element = clone $element;
-  }
-  else {
-    $filtered_element = $element;
-  }
-  $args = func_get_args();
-  unset($args[0]);
-  foreach ($args as $arg) {
-    if (isset($filtered_element[$arg])) {
-      unset($filtered_element[$arg]);
-    }
-  }
-  return $filtered_element;
+  @trigger_error('twig_without() is deprecated in Drupal 8.7.x and will be removed before Drupal 9.0.0. Use \Drupal\Core\Template\TwigExtension::withoutFilter(). See https://www.drupal.org/node/3011154.', E_USER_DEPRECATED);
+  /** @var \Drupal\Core\Template\TwigExtension $extension */
+  $extension = \Drupal::service('twig.extension');
+
+  return call_user_func_array([$extension, 'withoutFilter'], func_get_args());
 }