castMapType<K, V> function

Map castMapType<K, V>(
  1. Map map,
  2. Type keyType,
  3. Type valueType
)

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;
  }
}