createInstance<T extends ModelBase> static method

T? createInstance<T extends ModelBase>(
  1. Map<String, dynamic>? json
)

Implementation

static T? createInstance<T extends ModelBase>(Map<String, dynamic>? json) {
  if (json == null) return null;

  String classType = json['\$type'] ?? '$T, _';
  if (!_modelsFactory.containsKey(classType))
    throw new ApiException(400, 'Invalid class name $classType');

  var result = _modelsFactory[classType]!.call() as T;
  result.deserialize(json);
  return result;
}