maybeMap<T extends Object?> method
T
maybeMap<T extends Object?>({
- required T orElse,
- T? map,
- T? maybeMap,
Optionally map all values of the enum
default value is provided when value has not been mapped
Implementation
T maybeMap<T extends Object?>({
required T orElse,
T? map,
T? maybeMap,
}) {
var isNullable = true;
try {
final value = null as T;
} catch (_) {
isNullable = false;
}
switch (this) {
case MethodType.map:
if (map == null && !isNullable) return orElse;
return map as T;
case MethodType.maybeMap:
if (maybeMap == null && !isNullable) return orElse;
return maybeMap as T;
}
}