Boost.deserialize constructor
Boost.deserialize(
- BinaryReader reader
Deserialize.
Implementation
factory Boost.deserialize(BinaryReader reader) {
// Read [Boost] fields.
final flags = reader.readInt32();
final gift = (flags & 2) != 0;
final giveaway = (flags & 4) != 0;
final unclaimed = (flags & 8) != 0;
final id = reader.readString();
final hasUserIdField = (flags & 1) != 0;
final userId = hasUserIdField ? reader.readInt64() : null;
final hasGiveawayMsgIdField = (flags & 4) != 0;
final giveawayMsgId = hasGiveawayMsgIdField ? reader.readInt32() : null;
final date = reader.readDateTime();
final expires = reader.readDateTime();
final hasUsedGiftSlugField = (flags & 16) != 0;
final usedGiftSlug = hasUsedGiftSlugField ? reader.readString() : null;
final hasMultiplierField = (flags & 32) != 0;
final multiplier = hasMultiplierField ? reader.readInt32() : null;
// Construct [Boost] object.
final returnValue = Boost(
gift: gift,
giveaway: giveaway,
unclaimed: unclaimed,
id: id,
userId: userId,
giveawayMsgId: giveawayMsgId,
date: date,
expires: expires,
usedGiftSlug: usedGiftSlug,
multiplier: multiplier,
);
// Now return the deserialized [Boost].
return returnValue;
}