Created
December 16, 2019 07:38
-
-
Save Zfinix/9e2adf1fd79812324dc419dd50087582 to your computer and use it in GitHub Desktop.
This file contains hidden or 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
| library user_model; | |
| import 'dart:convert'; | |
| import 'package:built_collection/built_collection.dart'; | |
| import 'package:built_value/built_value.dart'; | |
| import 'package:built_value/serializer.dart'; | |
| import 'serializers.dart'; | |
| part 'user_model.g.dart'; | |
| abstract class UserModel implements Built<UserModel, UserModelBuilder> { | |
| UserModel._(); | |
| factory UserModel([updates(UserModelBuilder b)]) = _$UserModel; | |
| @BuiltValueField(wireName: 'id') | |
| int get id; | |
| @BuiltValueField(wireName: 'date') | |
| String get date; | |
| @BuiltValueField(wireName: 'name') | |
| String get name; | |
| @BuiltValueField(wireName: 'age') | |
| int get age; | |
| @BuiltValueField(wireName: 'url') | |
| String get url; | |
| @BuiltValueField(wireName: 'career') | |
| Career get career; | |
| @BuiltValueField(wireName: 'like') | |
| BuiltList<String> get like; | |
| String toJson() { | |
| return json.encode(serializers.serializeWith(UserModel.serializer, this)); | |
| } | |
| static UserModel fromJson(String jsonString) { | |
| return serializers.deserializeWith( | |
| UserModel.serializer, json.decode(jsonString)); | |
| } | |
| static Serializer<UserModel> get serializer => _$userModelSerializer; | |
| } | |
| abstract class Career implements Built<Career, CareerBuilder> { | |
| Career._(); | |
| factory Career([updates(CareerBuilder b)]) = _$Career; | |
| @BuiltValueField(wireName: 'job') | |
| String get job; | |
| String toJson() { | |
| return json.encode(serializers.serializeWith(Career.serializer, this)); | |
| } | |
| static Career fromJson(String jsonString) { | |
| return serializers.deserializeWith( | |
| Career.serializer, json.decode(jsonString)); | |
| } | |
| static Serializer<Career> get serializer => _$careerSerializer; | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment