a<T> static method

T? a<T>(
  1. dynamic value,
  2. T fromMap(
    1. Map<String, dynamic> map
    )
)

Implementation

static T? a<T>(
  dynamic value,
  T Function(Map<String, dynamic> map) fromMap,
) {
  if (value == null) {
    return null;
  }

  if (value is T) {
    return value;
  }

  if (value is Map<String, dynamic>) {
    return fromMap(value);
  }

  if (value is Map) {
    return fromMap(Map<String, dynamic>.from(value));
  }

  throw ArgumentError(
    "Cannot decode ${value.runtimeType} into ${T.toString()}",
  );
}