read method
Is called when a value has to be decoded.
Implementation
@override
T read(reader) {
// read attributes (no relationships stored)
final total = reader.readByte();
final map = <String, dynamic>{
for (var i = 0; i < total; i++) reader.read().toString(): reader.read(),
};
final model = deserialize(map);
// Model initialization is necessary here as `DataModel`s
// auto-initialization is not ready at this point
// (reading adapters during FD initialization)
initModel(model);
return model;
}