Skip to content

Callable cast error in Closure parameter #754

@szado

Description

@szado

When trying to cast a closure parameter that is typed as callable, an error is thrown if the source value is invalid (e.g. null or a string):

PHP Fatal error:  Uncaught Error: Call to undefined method CuyZ\Valinor\Type\Types\CallableType::canCast() in C:\Users\jaros\Documents\apps\php-view\vendor\cuyz\valinor\src\Mapper\Tree\Builder\ScalarNodeBuilder.php:26
Stack trace:
#0 C:\Users\jaros\Documents\apps\php-view\vendor\cuyz\valinor\src\Mapper\Tree\Builder\TypeNodeBuilder.php(73): CuyZ\Valinor\Mapper\Tree\Builder\ScalarNodeBuilder->build()      
#1 C:\Users\jaros\Documents\apps\php-view\vendor\cuyz\valinor\src\Mapper\Tree\Builder\ValueConverterNodeBuilder.php(51): CuyZ\Valinor\Mapper\Tree\Builder\TypeNodeBuilder->build()
#2 C:\Users\jaros\Documents\apps\php-view\vendor\cuyz\valinor\src\Mapper\Tree\Shell.php(70): CuyZ\Valinor\Mapper\Tree\Builder\ValueConverterNodeBuilder->build()
#3 C:\Users\jaros\Documents\apps\php-view\vendor\cuyz\valinor\src\Mapper\Tree\Builder\ShapedArrayNodeBuilder.php(52): CuyZ\Valinor\Mapper\Tree\Shell->build()
#4 C:\Users\jaros\Documents\apps\php-view\vendor\cuyz\valinor\src\Mapper\Tree\Builder\TypeNodeBuilder.php(73): CuyZ\Valinor\Mapper\Tree\Builder\ShapedArrayNodeBuilder->build() 
#5 C:\Users\jaros\Documents\apps\php-view\vendor\cuyz\valinor\src\Mapper\Tree\Builder\ValueConverterNodeBuilder.php(51): CuyZ\Valinor\Mapper\Tree\Builder\TypeNodeBuilder->build()
#6 C:\Users\jaros\Documents\apps\php-view\vendor\cuyz\valinor\src\Mapper\Tree\Shell.php(73): CuyZ\Valinor\Mapper\Tree\Builder\ValueConverterNodeBuilder->build()
#7 C:\Users\jaros\Documents\apps\php-view\vendor\cuyz\valinor\src\Mapper\Tree\RootNodeBuilder.php(46): CuyZ\Valinor\Mapper\Tree\Shell->build()
#8 C:\Users\jaros\Documents\apps\php-view\vendor\cuyz\valinor\src\Mapper\TypeArgumentsMapper.php(43): CuyZ\Valinor\Mapper\Tree\RootNodeBuilder->build()

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions