code: protected static function convertMethodParamsToString(
          array $methodParameters,
          GetParameter $parameterValuesMethod
      ): string {
          $parameters = [];
          foreach ($methodParameters as $methodParameter) {
              /** @var Parameter $methodParameter */
              $defaultValue = $methodParameter->getDefaultValue();
              switch (\gettype($defaultValue)) {
                  case 'string':
                      $defaultValue = '"' . $defaultValue . '"';
                      break;
                  case 'boolean':
                      $defaultValue = $defaultValue ? 'true' : 'false';
                      break;
                  case 'NULL':
                      $defaultValue = 'null';
                      break;
                  default:
                      break;
              }
  
              $template = empty($defaultValue) ? '$this->%s("%s", %s)' : '$this->%s("%s", %s, %s)';
              $required = $methodParameter->isRequired() ? 'true' : 'false';
              $methodName = $parameterValuesMethod->getName();
              $parameters[] = \sprintf($template, $methodName, $methodParameter->getName(), $required, $defaultValue);
          }
  
          return \implode(', ', $parameters);
      }
docs: Converts the Parameter annotations to the respective getParameter() method calls to retrieve the configuration
  values.
  
  @param Parameter[] $methodParameters
  @param GetParameter $parameterValuesMethod
  @return string