Created
April 10, 2021 10:28
-
-
Save schultek/e0d376122955a2f9d6b6fac25433b483 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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