BossBey File Manager
PHP:
7.4.33
OS:
Linux
User:
root
Root
/
opt
/
cpanel
/
ea-wappspector
/
vendor
/
php-di
/
php-di
/
src
/
Definition
/
Resolver
📤 Upload
📝 New File
📁 New Folder
Close
Editing: InstanceInjector.php
<?php declare(strict_types=1); namespace DI\Definition\Resolver; use DI\Definition\Definition; use DI\Definition\InstanceDefinition; use DI\DependencyException; use Psr\Container\NotFoundExceptionInterface; /** * Injects dependencies on an existing instance. * * @template-implements DefinitionResolver<InstanceDefinition> * * @since 5.0 * @author Matthieu Napoli <matthieu@mnapoli.fr> */ class InstanceInjector extends ObjectCreator implements DefinitionResolver { /** * Injects dependencies on an existing instance. * * @param InstanceDefinition $definition * @psalm-suppress ImplementedParamTypeMismatch */ public function resolve(Definition $definition, array $parameters = []) : ?object { /** @psalm-suppress InvalidCatch */ try { $this->injectMethodsAndProperties($definition->getInstance(), $definition->getObjectDefinition()); } catch (NotFoundExceptionInterface $e) { $message = sprintf( 'Error while injecting dependencies into %s: %s', get_class($definition->getInstance()), $e->getMessage() ); throw new DependencyException($message, 0, $e); } return $definition; } public function isResolvable(Definition $definition, array $parameters = []) : bool { return true; } }
Save
Cancel