StarGiftUnique.deserialize constructor
StarGiftUnique.deserialize(
- BinaryReader reader
Deserialize.
Implementation
factory StarGiftUnique.deserialize(BinaryReader reader) {
// Read [StarGiftUnique] fields.
final flags = reader.readInt32();
final requirePremium = (flags & 64) != 0;
final resaleTonOnly = (flags & 128) != 0;
final themeAvailable = (flags & 512) != 0;
final burned = (flags & 16384) != 0;
final crafted = (flags & 32768) != 0;
final id = reader.readInt64();
final giftId = reader.readInt64();
final title = reader.readString();
final slug = reader.readString();
final num = reader.readInt32();
final hasOwnerIdField = (flags & 1) != 0;
final ownerId = hasOwnerIdField ? reader.readObject() as PeerBase : null;
final hasOwnerNameField = (flags & 2) != 0;
final ownerName = hasOwnerNameField ? reader.readString() : null;
final hasOwnerAddressField = (flags & 4) != 0;
final ownerAddress = hasOwnerAddressField ? reader.readString() : null;
final attributes = reader.readVectorObject<StarGiftAttributeBase>();
final availabilityIssued = reader.readInt32();
final availabilityTotal = reader.readInt32();
final hasGiftAddressField = (flags & 8) != 0;
final giftAddress = hasGiftAddressField ? reader.readString() : null;
final hasResellAmountField = (flags & 16) != 0;
final resellAmount = hasResellAmountField
? reader.readVectorObject<StarsAmountBase>()
: null;
final hasReleasedByField = (flags & 32) != 0;
final releasedBy =
hasReleasedByField ? reader.readObject() as PeerBase : null;
final hasValueAmountField = (flags & 256) != 0;
final valueAmount = hasValueAmountField ? reader.readInt64() : null;
final hasValueCurrencyField = (flags & 256) != 0;
final valueCurrency = hasValueCurrencyField ? reader.readString() : null;
final hasValueUsdAmountField = (flags & 256) != 0;
final valueUsdAmount = hasValueUsdAmountField ? reader.readInt64() : null;
final hasThemePeerField = (flags & 1024) != 0;
final themePeer =
hasThemePeerField ? reader.readObject() as PeerBase : null;
final hasPeerColorField = (flags & 2048) != 0;
final peerColor =
hasPeerColorField ? reader.readObject() as PeerColorBase : null;
final hasHostIdField = (flags & 4096) != 0;
final hostId = hasHostIdField ? reader.readObject() as PeerBase : null;
final hasOfferMinStarsField = (flags & 8192) != 0;
final offerMinStars = hasOfferMinStarsField ? reader.readInt32() : null;
final hasCraftChancePermilleField = (flags & 65536) != 0;
final craftChancePermille =
hasCraftChancePermilleField ? reader.readInt32() : null;
// Construct [StarGiftUnique] object.
final returnValue = StarGiftUnique(
requirePremium: requirePremium,
resaleTonOnly: resaleTonOnly,
themeAvailable: themeAvailable,
burned: burned,
crafted: crafted,
id: id,
giftId: giftId,
title: title,
slug: slug,
num: num,
ownerId: ownerId,
ownerName: ownerName,
ownerAddress: ownerAddress,
attributes: attributes.items,
availabilityIssued: availabilityIssued,
availabilityTotal: availabilityTotal,
giftAddress: giftAddress,
resellAmount: resellAmount?.items,
releasedBy: releasedBy,
valueAmount: valueAmount,
valueCurrency: valueCurrency,
valueUsdAmount: valueUsdAmount,
themePeer: themePeer,
peerColor: peerColor,
hostId: hostId,
offerMinStars: offerMinStars,
craftChancePermille: craftChancePermille,
);
// Now return the deserialized [StarGiftUnique].
return returnValue;
}