PluginProbe
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode / 3.10.0
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode v3.10.0
4.7.3 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 All 93 releases
cookiebot / addons / inc / Dependencies / DI / Definition / AbstractFunctionCallDefinition.php

AbstractFunctionCallDefinition.php in Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode 3.10.0, at addons/inc/Dependencies/DI/Definition/AbstractFunctionCallDefinition.php

83 lines 1.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
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 <[email protected]>
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