X7ROOT File Manager
Current Path:
/opt/cpanel/ea-wappspector/vendor/php-di/php-di/src/Definition/Resolver
opt
/
cpanel
/
ea-wappspector
/
vendor
/
php-di
/
php-di
/
src
/
Definition
/
Resolver
/
??
..
??
ArrayResolver.php
(1.95 KB)
??
DecoratorResolver.php
(2.19 KB)
??
DefinitionResolver.php
(1.22 KB)
??
EnvironmentVariableResolver.php
(1.82 KB)
??
FactoryResolver.php
(3.67 KB)
??
InstanceInjector.php
(1.36 KB)
??
ObjectCreator.php
(6.7 KB)
??
ParameterResolver.php
(3.53 KB)
??
ResolverDispatcher.php
(4.42 KB)
Editing: ArrayResolver.php
<?php declare(strict_types=1); namespace DI\Definition\Resolver; use DI\Definition\ArrayDefinition; use DI\Definition\Definition; use DI\DependencyException; use Exception; /** * Resolves an array definition to a value. * * @template-implements DefinitionResolver<ArrayDefinition> * * @since 5.0 * @author Matthieu Napoli <matthieu@mnapoli.fr> */ class ArrayResolver implements DefinitionResolver { /** * @param DefinitionResolver $definitionResolver Used to resolve nested definitions. */ public function __construct( private DefinitionResolver $definitionResolver, ) { } /** * {@inheritDoc} * * Resolve an array definition to a value. * * An array definition can contain simple values or references to other entries. * * @param ArrayDefinition $definition */ public function resolve(Definition $definition, array $parameters = []) : array { $values = $definition->getValues(); // Resolve nested definitions array_walk_recursive($values, function (& $value, $key) use ($definition) { if ($value instanceof Definition) { $value = $this->resolveDefinition($value, $definition, $key); } }); return $values; } public function isResolvable(Definition $definition, array $parameters = []) : bool { return true; } /** * @throws DependencyException */ private function resolveDefinition(Definition $value, ArrayDefinition $definition, int|string $key) : mixed { try { return $this->definitionResolver->resolve($value); } catch (DependencyException $e) { throw $e; } catch (Exception $e) { throw new DependencyException(sprintf( 'Error while resolving %s[%s]. %s', $definition->getName(), $key, $e->getMessage() ), 0, $e); } } }
Upload File
Create Folder