Submit
Path:
~
/
/
opt
/
psa
/
admin
/
plib
/
vendor
/
php-di
/
php-di
/
src
/
Definition
/
ObjectDefinition
/
File Content:
MethodInjection.php
<?php declare(strict_types=1); namespace DI\Definition\ObjectDefinition; use DI\Definition\Definition; /** * Describe an injection in an object method. * * @author Matthieu Napoli <matthieu@mnapoli.fr> */ class MethodInjection implements Definition { /** * @param mixed[] $parameters */ public function __construct( private string $methodName, private array $parameters = [], ) { } public static function constructor(array $parameters = []) : self { return new self('__construct', $parameters); } public function getMethodName() : string { return $this->methodName; } /** * @return mixed[] */ public function getParameters() : array { return $this->parameters; } /** * Replace the parameters of the definition by a new array of parameters. */ public function replaceParameters(array $parameters) : void { $this->parameters = $parameters; } public function merge(self $definition) : void { // In case of conflicts, the current definition prevails. $this->parameters += $definition->parameters; } public function getName() : string { return ''; } public function setName(string $name) : void { // The name does not matter for method injections } public function replaceNestedDefinitions(callable $replacer) : void { $this->parameters = array_map($replacer, $this->parameters); } public function __toString() : string { return sprintf('method(%s)', $this->methodName); } }
Edit
Rename
Chmod
Delete
FILE
FOLDER
INFO
Name
Size
Permission
Action
MethodInjection.php
1645 bytes
0644
PropertyInjection.php
1454 bytes
0644
N4ST4R_ID | Naxtarrr