wol-soft/php-json-schema-model-generator

View on GitHub
src/Templates/Decorator/ObjectInstantiationDecorator.phptpl

Summary

Maintainability
Test Coverage
(function ($value) {
    try {
        return is_array($value) ? new {{ className }}($value) : $value;
    } catch (\Exception $instantiationException) {
        {% if nestedProperty %}
            {{ viewHelper.validationError(nestedValidator) }}
        {% else %}
            {% if generatorConfiguration.collectErrors() %}
                foreach($instantiationException->getErrors() as $nestedValidationError) {
                    $this->_errorRegistry->addError($nestedValidationError);
                }
            {% else %}
                throw $instantiationException;
            {% endif %}
        {% endif %}

        {% if generatorConfiguration.collectErrors() %}
            return $instantiationException;
        {% endif %}
    }
})({{ input }})