Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / vendor / league / container / src / Definition / CallableDefinition.php
diff --git a/vendor/league/container/src/Definition/CallableDefinition.php b/vendor/league/container/src/Definition/CallableDefinition.php
new file mode 100644 (file)
index 0000000..e8fe2e7
--- /dev/null
@@ -0,0 +1,23 @@
+<?php
+
+namespace League\Container\Definition;
+
+class CallableDefinition extends AbstractDefinition
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function build(array $args = [])
+    {
+        $args     = (empty($args)) ? $this->arguments : $args;
+        $resolved = $this->resolveArguments($args);
+
+        if (is_array($this->concrete) && is_string($this->concrete[0])) {
+            $this->concrete[0] = ($this->getContainer()->has($this->concrete[0]))
+                               ? $this->getContainer()->get($this->concrete[0])
+                               : $this->concrete[0];
+        }
+
+        return call_user_func_array($this->concrete, $resolved);
+    }
+}