castMapType<K, V> function
Implementation
Map castMapType<K, V>(Map map, Type keyType, Type valueType) {
if (map is Map<K, V> &&
K != dynamic &&
K != Object &&
V != dynamic &&
V != Object) {
return map;
} else if (keyType == String) {
return _castMapValueType<String>(map, keyType, valueType);
} else if (keyType == int) {
return _castMapValueType<int>(map, keyType, valueType);
} else if (keyType == double) {
return _castMapValueType<double>(map, keyType, valueType);
} else if (keyType == num) {
return _castMapValueType<num>(map, keyType, valueType);
} else if (keyType == bool) {
return _castMapValueType<bool>(map, keyType, valueType);
} else if (keyType == DateTime) {
return _castMapValueType<DateTime>(map, keyType, valueType);
} else if (keyType == Duration) {
return _castMapValueType<Duration>(map, keyType, valueType);
} else if (keyType == BigInt) {
return _castMapValueType<BigInt>(map, keyType, valueType);
} else if (keyType == Uint8List) {
return _castMapValueType<Uint8List>(map, keyType, valueType);
} else if (keyType == dynamic) {
return _castMapValueType<dynamic>(map, keyType, valueType);
} else if (keyType == Object) {
return _castMapValueType<Object>(map, keyType, valueType);
} else {
return map;
}
}