convert method
Implementation
dynamic convert(dynamic value, Type fromType, Type toType) {
if (value == null || fromType == toType) return value;
final key = TypeKey(fromType, toType);
final converter = _converters[key];
if (converter != null) return converter(value);
// fallback if exact runtime types match
if (value.runtimeType == toType)
return value;
throw UnsupportedError('No converter registered for $fromType -> $toType');
}