PluginProbe ʕ •ᴥ•ʔ
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode / 3.10.1
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode v3.10.1
4.7.2 4.7.1 trunk 2.3.0 2.4.0 2.4.1 2.4.2 2.5.0 3.0.0 3.0.1 3.1.0 3.10.0 3.10.1 3.11.1 3.11.2 3.11.3 3.2.0 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.6.0 3.6.1 3.6.2 3.6.5 3.6.6 3.7.0 3.7.1 3.8.0 3.9.0 4.0.0 4.0.1 4.0.2 4.0.3 4.1.0 4.1.1 4.2.0 4.2.1 4.2.10 4.2.11 4.2.12 4.2.13 4.2.14 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.8 4.2.9 4.3.0 4.3.1 4.3.10 4.3.11 4.3.12 4.3.2 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.3.7.1 4.3.8 4.3.9 4.3.9.1 4.4.0 4.4.1 4.4.2 4.5.0 4.5.1 4.5.10 4.5.11 4.5.2 4.5.3 4.5.4 4.5.5 4.5.6 4.5.7 4.5.8 4.5.9 4.6.0 4.6.1 4.6.2 4.6.3 4.6.4 4.6.5 4.6.6 4.6.7 4.7.0
cookiebot / addons / inc / Dependencies / DI / Definition / AbstractFunctionCallDefinition.php
cookiebot / addons / inc / Dependencies / DI / Definition Last commit date
Dumper 5 years ago Exception 5 years ago Helper 5 years ago ObjectDefinition 5 years ago Resolver 5 years ago Source 5 years ago AbstractFunctionCallDefinition.php 5 years ago AliasDefinition.php 5 years ago ArrayDefinition.php 5 years ago ArrayDefinitionExtension.php 5 years ago CacheableDefinition.php 5 years ago DecoratorDefinition.php 5 years ago Definition.php 5 years ago EntryReference.php 5 years ago EnvironmentVariableDefinition.php 5 years ago FactoryDefinition.php 5 years ago HasSubDefinition.php 5 years ago InstanceDefinition.php 5 years ago ObjectDefinition.php 5 years ago StringDefinition.php 5 years ago ValueDefinition.php 5 years ago
AbstractFunctionCallDefinition.php
83 lines
1 <?php
2 /**
3 * PHP-DI
4 *
5 * @link http://php-di.org/
6 * @copyright Matthieu Napoli (http://mnapoli.fr/)
7 * @license http://www.opensource.org/licenses/mit-license.php MIT (see the LICENSE file)
8 */
9
10 namespace Cybot\Dependencies\DI\Definition;
11
12 use Cybot\Dependencies\DI\Scope;
13
14 /**
15 * Describe a function call.
16 *
17 * @author Matthieu Napoli <matthieu@mnapoli.fr>
18 */
19 abstract class AbstractFunctionCallDefinition implements Definition
20 {
21 /**
22 * @var array
23 */
24 protected $parameters = [];
25
26 /**
27 * @return array
28 */
29 public function getParameters()
30 {
31 return $this->parameters;
32 }
33
34 /**
35 * @param int $index Position of the parameter (starting at 0)
36 * @return mixed|null Value to inject, or null if no injection defined.
37 */
38 public function hasParameter($index)
39 {
40 return array_key_exists($index, $this->parameters);
41 }
42
43 /**
44 * @param int $index Position of the parameter (starting at 0)
45 * @throws \InvalidArgumentException
46 * @return mixed Value to inject
47 */
48 public function getParameter($index)
49 {
50 if (! array_key_exists($index, $this->parameters)) {
51 throw new \InvalidArgumentException('There is no parameter value for index ' . $index);
52 }
53
54 return $this->parameters[$index];
55 }
56
57 /**
58 * Replace the parameters of the definition by a new array of parameters.
59 *
60 * @param array $parameters
61 */
62 public function replaceParameters(array $parameters)
63 {
64 $this->parameters = $parameters;
65 }
66
67 /**
68 * {@inheritdoc}
69 */
70 public function getName()
71 {
72 return null;
73 }
74
75 /**
76 * {@inheritdoc}
77 */
78 public function getScope()
79 {
80 return Scope::PROTOTYPE;
81 }
82 }
83