parse<T> static method

T? parse<T>({
  1. required String modelName,
  2. required Map<String, dynamic> json,
  3. required T fromJson(
    1. Map<String, dynamic>
    ),
})

Parses a single JSON object into a model.

If parsing fails, the error is logged and null is returned.

Implementation

static T? parse<T>({
  required String modelName,
  required Map<String, dynamic> json,
  required T Function(Map<String, dynamic>) fromJson,
}) {
  try {
    final model = fromJson(json);
    return model;
  } catch (e) {
    // Print detailed error
    print("⚠ JSON Parsing Error");
    print("Model: $modelName");
    print("Error: $e");
    print("JSON: $json");
    return null;
  }
}