register<T> method
void
register<T>(
- T casterFn(
- dynamic value, {
- T orElse()?,
Registers a custom caster function for a specific type.
The casterFn function should take a dynamic value and optional orElse function
and return an instance of type T.
Example:
TypeCasterRegistry.instance.register<User>((dynamic value, {User Function()? orElse}) {
if (value is Map<String, dynamic>) {
return User.fromJson(value);
}
if (orElse != null) {
return orElse();
}
throw CastException(value, 'User');
});
Implementation
void register<T>(T Function(dynamic value, {T Function()? orElse}) casterFn) {
_casters[T] = casterFn;
}