diff --git a/src/MethodSignatureString.php b/src/MethodSignatureString.php index 8ee9f4d0..a9f0b2a5 100644 --- a/src/MethodSignatureString.php +++ b/src/MethodSignatureString.php @@ -54,17 +54,7 @@ public function get(ReflectionMethod $method): string $formattedArgs = []; foreach ($argsList as $name => $value) { - if ($value instanceof UnitEnum) { - $formattedValue = '\\' . var_export($value, true); - $argRepresentation = is_numeric($name) ? $formattedValue : "{$name}: {$formattedValue}"; - $formattedArgs[] = $argRepresentation; - - continue; - } - - $formattedValue = preg_replace('/\s+/', ' ', var_export($value, true)); - $argRepresentation = is_numeric($name) ? $formattedValue : "{$name}: {$formattedValue}"; - $formattedArgs[] = $argRepresentation; + $formattedArgs[] = $this->representArg($name, $value); } $signatureParts[] = sprintf(' #[\\%s(%s)]', $attribute->getName(), implode(', ', $formattedArgs)) . PHP_EOL; @@ -98,6 +88,23 @@ public function get(ReflectionMethod $method): string return implode(' ', $signatureParts); } + /** + * @param string|int $name + * @param mixed $value + */ + private function representArg($name, $value): string + { + if ($value instanceof UnitEnum) { + $formattedValue = '\\' . var_export($value, true); + + return is_numeric($name) ? $formattedValue : "{$name}: {$formattedValue}"; + } + + $formattedValue = preg_replace('/\s+/', ' ', var_export($value, true)); + + return is_numeric($name) ? $formattedValue : "{$name}: {$formattedValue}"; + } + public function generateParameterCode(ReflectionParameter $param): string { $typeStr = ($this->typeString)($param->getType());