mapGuarded<T> function

T? mapGuarded<T>({
  1. required T mapper(
    1. Map<String, dynamic> json
    ),
  2. required dynamic json,
})

A convenience method to map a JSON object to a Dart object with error handling.

Implementation

T? mapGuarded<T>({
  required T Function(Map<String, dynamic> json) mapper,
  required dynamic json,
}) {
  if (json == null || json is! Map<String, dynamic>) {
    return null;
  }

  try {
    return mapper(json);
  } catch (_) {
    return null;
  }
}