Skip to content

Instantly share code, notes, and snippets.

@schultek
Created April 10, 2021 10:28
Show Gist options
  • Save schultek/e0d376122955a2f9d6b6fac25433b483 to your computer and use it in GitHub Desktop.
Save schultek/e0d376122955a2f9d6b6fac25433b483 to your computer and use it in GitHub Desktop.
import 'package:dart_json_mapper/dart_json_mapper.dart';
import 'main.mapper.g.dart';
@jsonSerializable
class Car {
String model;
int? miles;
List<String>? passengers;
Car(this.model, this.miles, this.passengers);
@override
String toString() {
return 'Car{model: $model, miles: $miles, passengers: $passengers}';
}
}
void main() {
initializeJsonMapper();
// All Values
var json = JsonMapper.serialize(Car("tesla", 1000, ["Tom", "Anna"]));
print(json);
print(JsonMapper.deserialize<Car>(json)); // OK
// Null Int
var json2 = JsonMapper.serialize(Car("tesla", null, ["Tom", "Anna"]));
print(json2);
print(JsonMapper.deserialize<Car>(json2)); // OK
// Null List
var json3 = JsonMapper.serialize(Car("tesla", 1000, null));
print(json3);
print(JsonMapper.deserialize<Car>(json3)); // FAILS
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment