Passed
Pull Request — master (#772)
by Aleksei
06:58
created
src/Attributes/src/Internal/Instantiator/NamedArgumentsInstantiator.php 1 patch
Spacing   +23 added lines, -23 removed lines patch added patch discarded remove patch
@@ -49,17 +49,17 @@  discard block
 block discarded – undo
49 49
      */
50 50
     public function instantiate(\ReflectionClass $attr, array $arguments, \Reflector $context = null): object
51 51
     {
52
-        if ($this->isNamedArgumentsSupported()) {
53
-            try {
52
+        if ($this->isNamedArgumentsSupported()){
53
+            try{
54 54
                 return $attr->newInstanceArgs($arguments);
55
-            } catch (\Throwable $e) {
55
+            }catch (\Throwable $e){
56 56
                 throw Exception::withLocation($e, $attr->getFileName(), $attr->getStartLine());
57 57
             }
58 58
         }
59 59
 
60 60
         $constructor = $this->getConstructor($attr);
61 61
 
62
-        if ($constructor === null) {
62
+        if ($constructor === null){
63 63
             return $attr->newInstanceWithoutConstructor();
64 64
         }
65 65
 
@@ -78,9 +78,9 @@  discard block
 block discarded – undo
78 78
      */
79 79
     private function resolveParameters(\ReflectionClass $ctx, \ReflectionMethod $constructor, array $arguments): array
80 80
     {
81
-        try {
81
+        try{
82 82
             return $this->doResolveParameters($ctx, $constructor, $arguments);
83
-        } catch (\Throwable $e) {
83
+        }catch (\Throwable $e){
84 84
             throw Exception::withLocation($e, $constructor->getFileName(), $constructor->getStartLine());
85 85
         }
86 86
     }
@@ -92,16 +92,16 @@  discard block
 block discarded – undo
92 92
     {
93 93
         $namedArgsBegin = $this->analyzeKeys($arguments);
94 94
 
95
-        if ($namedArgsBegin === null) {
95
+        if ($namedArgsBegin === null){
96 96
             // Only numeric / positional keys exist.
97 97
             return $arguments;
98 98
         }
99 99
 
100
-        if ($namedArgsBegin === 0) {
100
+        if ($namedArgsBegin === 0){
101 101
             // Only named keys exist.
102 102
             $passed = [];
103 103
             $named = $arguments;
104
-        } else {
104
+        }else{
105 105
             // Numeric/positional keys followed by named keys.
106 106
             // No need to preserve numeric keys.
107 107
             $passed = array_slice($arguments, 0, $namedArgsBegin);
@@ -135,11 +135,11 @@  discard block
 block discarded – undo
135 135
         $arguments = \array_merge($arguments);
136 136
 
137 137
         $i = 0;
138
-        foreach ($arguments as $k => $_) {
139
-            if ($k !== $i) {
138
+        foreach ($arguments as $k => $_){
139
+            if ($k !== $i){
140 140
                 // This must be a string key.
141 141
                 // Any further numeric keys are illegal.
142
-                if (\array_key_exists($i, $arguments)) {
142
+                if (\array_key_exists($i, $arguments)){
143 143
                     throw new \BadMethodCallException(self::ERROR_POSITIONAL_AFTER_NAMED);
144 144
                 }
145 145
                 return $i;
@@ -171,25 +171,25 @@  discard block
 block discarded – undo
171 171
     {
172 172
         // Analyze parameters.
173 173
         $n = count($parameters);
174
-        if ($n > 0 && end($parameters)->isVariadic()) {
174
+        if ($n > 0 && end($parameters)->isVariadic()){
175 175
             $variadicParameter = end($parameters);
176 176
             // Don't include the variadic parameter in the mapping process.
177 177
             --$n;
178
-        } else {
178
+        }else{
179 179
             $variadicParameter = null;
180 180
         }
181 181
 
182 182
         // Process parameters that are not already filled with positional args.
183 183
         // This loop will do nothing if $namedArgsBegin >= $n. That's ok.
184
-        for ($i = $namedArgsBegin; $i < $n; ++$i) {
184
+        for ($i = $namedArgsBegin; $i < $n; ++$i){
185 185
             $parameter = $parameters[$i];
186 186
             $k = $parameter->getName();
187
-            if (array_key_exists($k, $named)) {
187
+            if (array_key_exists($k, $named)){
188 188
                 $passed[] = $named[$k];
189 189
                 unset($named[$k]);
190
-            } elseif ($parameter->isDefaultValueAvailable()) {
190
+            } elseif ($parameter->isDefaultValueAvailable()){
191 191
                 $passed[] = $parameter->getDefaultValue();
192
-            } else {
192
+            }else{
193 193
                 $message = \vsprintf(self::ERROR_ARGUMENT_NOT_PASSED, [
194 194
                     $ctx->getName(),
195 195
                     $parameter->getPosition() + 1,
@@ -200,7 +200,7 @@  discard block
 block discarded – undo
200 200
             }
201 201
         }
202 202
 
203
-        if ($named === []) {
203
+        if ($named === []){
204 204
             // No unknown argument names exist.
205 205
             return $passed;
206 206
         }
@@ -210,11 +210,11 @@  discard block
 block discarded – undo
210 210
         $badArgName = key($named);
211 211
 
212 212
         // Check collision with positional arguments.
213
-        foreach ($parameters as $i => $parameter) {
214
-            if ($i >= $namedArgsBegin) {
213
+        foreach ($parameters as $i => $parameter){
214
+            if ($i >= $namedArgsBegin){
215 215
                 break;
216 216
             }
217
-            if ($parameter->getName() === $badArgName) {
217
+            if ($parameter->getName() === $badArgName){
218 218
                 // The named argument overwrites a positional argument.
219 219
                 $message = \sprintf(self::ERROR_OVERWRITE_ARGUMENT, $badArgName);
220 220
                 throw new \BadMethodCallException($message);
@@ -222,7 +222,7 @@  discard block
 block discarded – undo
222 222
         }
223 223
 
224 224
         // Special handling if a variadic parameter is present.
225
-        if ($variadicParameter !== null) {
225
+        if ($variadicParameter !== null){
226 226
             // The last parameter is variadic.
227 227
             // Since PHP 8+, variadic parameters can consume named arguments.
228 228
             // However, this code only runs if PHP < 8.
Please login to merge, or discard this patch.