inferObjectType function

String inferObjectType(
  1. String contents, {
  2. String? className,
  3. MergeStrategy mergeStrategy = MergeStrategy.mergeNonMatchingObjects,
})

Implementation

String inferObjectType(
  String contents, {
  String? className,
  MergeStrategy mergeStrategy = MergeStrategy.mergeNonMatchingObjects,
}) {
  final decoded = json.decode(contents);
  final dataType = JsonToDataTypeConverter.convert(decoded);
  if (dataType is! ObjectType) {
    throw InvalidGenerationSourceError('JSON file does not contain an object.');
  }

  final result = DartCodeGenerator.generateCodeForObject(
    dataType,
    mergeStrategy: mergeStrategy,
    className: className,
  );
  return result;
}