Library adding some extra features to the Symfony Type Info component.
Compatible with Symfony type-info:7.3.8+, type-info:7.4.1+, type-info:8.0+ and type-info:8.1+.
<?php
use Radebatz\TypeInfoExtras\TypeResolver\StringTypeResolver as ExtraStringTypeResolver;
$resolver = new ExtraStringTypeResolver();
$type = $resolver->resolve('html-escaped-string');
echo get_class($type); // Radebatz\TypeInfoExtras\Type\ExplicitType
echo $type->getExplicitType() // "html-escaped-string"
$type = $resolver->resolve('class-string<Foo>');
echo get_class($type); // Radebatz\TypeInfoExtras\Type\ClassLikeType
echo $type->getExplicitType(); // "class-string"
echo get_class($type->getObjectType()); // Symfony\Component\TypeInfo\Type\ObjectType
echo $type->getObjectType(); // Foo
$type = $resolver->resolve('int<5,20>');
echo get_class($type); // Radebatz\TypeInfoExtras\Type\IntRangeTypeIf your code is doing instanceof checks on the returned Type, then you will need to add another case and treat
Radebatz\TypeInfoExtras\Tests\Type\ExplicitType same as BuiltinType.