lib/Parameters/ParameterBuilderFactory.php
protected function resolveOptions(array $config): array
    {
        $optionsResolver = new OptionsResolver();

        $optionsResolver->setDefault('name', null);
        $optionsResolver->setDefault('type', null);
        $optionsResolver->setDefault('options', []);
        $optionsResolver->setDefault('parent', null);

        $optionsResolver->setRequired(['name', 'type', 'options', 'parent']);

        $optionsResolver->setAllowedTypes('name', ['null', 'string']);
        $optionsResolver->setAllowedTypes('type', ['null', 'string', ParameterTypeInterface::class]);
        $optionsResolver->setAllowedTypes('options', 'array');
        $optionsResolver->setAllowedTypes('parent', ['null', ParameterBuilderInterface::class]);

        $optionsResolver->setNormalizer(
            'type',
            function (Options $options, $value) {
                if (!is_string($value)) {
                    return $value;
                }

                return $this->parameterTypeRegistry->getParameterTypeByClass($value);
            }
        );

        return $optionsResolver->resolve($config);
    }
protected function resolveOptions(array $config): array
    {
        $optionsResolver = new OptionsResolver();

        $optionsResolver->setDefault('name', null);
        $optionsResolver->setDefault('type', null);
        $optionsResolver->setDefault('options', []);
        $optionsResolver->setDefault('parent', null);

        $optionsResolver->setRequired(['name', 'type', 'options', 'parent']);

        $optionsResolver->setAllowedTypes('name', ['null', 'string']);
        $optionsResolver->setAllowedTypes('type', ['null', 'string', ParameterTypeInterface::class]);
        $optionsResolver->setAllowedTypes('options', 'array');
        $optionsResolver->setAllowedTypes('parent', ['null', ParameterBuilderInterface::class]);

        $optionsResolver->setNormalizer(
            'type',
            function (Options $options, $value) {
                if (!is_string($value)) {
                    return $value;
                }

                return $this->parameterTypeRegistry->getParameterTypeByClass($value);
            }
        );

        return $optionsResolver->resolve($config);
    }
protected function resolveOptions ( array $ config ) : array { $ optionsResolver = new OptionsResolver ( ) ; $ optionsResolver -> setDefault ( 'name' , null ) ; $ optionsResolver -> setDefault ( 'type' , null ) ; $ optionsResolver -> setDefault ( 'options' , [ ] ) ; $ optionsResolver -> setDefault ( 'parent' , null ) ; $ optionsResolver -> setRequired ( [ 'name' , 'type' , 'options' , 'parent' ] ) ; $ optionsResolver -> setAllowedTypes ( 'name' , [ 'null' , 'string' ] ) ; $ optionsResolver -> setAllowedTypes ( 'type' , [ 'null' , 'string' , ParameterTypeInterface :: class ] ) ; $ optionsResolver -> setAllowedTypes ( 'options' , 'array' ) ; $ optionsResolver -> setAllowedTypes ( 'parent' , [ 'null' , ParameterBuilderInterface :: class ] ) ; $ optionsResolver -> setNormalizer ( 'type' , function ( Options $ options , $ value ) { if ( ! is_string ( $ value ) ) { return $ value ; } return $ this -> parameterTypeRegistry -> getParameterTypeByClass ( $ value ) ; } ) ; return $ optionsResolver -> resolve ( $ config ) ; }
Resolves the provided parameter builder configuration.
Resolves the provided parameter builder configuration .