PaymentsStarsStatus.deserialize constructor
PaymentsStarsStatus.deserialize(
- BinaryReader reader
Deserialize.
Implementation
factory PaymentsStarsStatus.deserialize(BinaryReader reader) {
// Read [PaymentsStarsStatus] fields.
final flags = reader.readInt32();
final balance = reader.readObject() as StarsAmountBase;
final hasSubscriptionsField = (flags & 2) != 0;
final subscriptions = hasSubscriptionsField
? reader.readVectorObject<StarsSubscriptionBase>()
: null;
final hasSubscriptionsNextOffsetField = (flags & 4) != 0;
final subscriptionsNextOffset =
hasSubscriptionsNextOffsetField ? reader.readString() : null;
final hasSubscriptionsMissingBalanceField = (flags & 16) != 0;
final subscriptionsMissingBalance =
hasSubscriptionsMissingBalanceField ? reader.readInt64() : null;
final hasHistoryField = (flags & 8) != 0;
final history = hasHistoryField
? reader.readVectorObject<StarsTransactionBase>()
: null;
final hasNextOffsetField = (flags & 1) != 0;
final nextOffset = hasNextOffsetField ? reader.readString() : null;
final chats = reader.readVectorObject<ChatBase>();
final users = reader.readVectorObject<UserBase>();
// Construct [PaymentsStarsStatus] object.
final returnValue = PaymentsStarsStatus(
balance: balance,
subscriptions: subscriptions?.items,
subscriptionsNextOffset: subscriptionsNextOffset,
subscriptionsMissingBalance: subscriptionsMissingBalance,
history: history?.items,
nextOffset: nextOffset,
chats: chats.items,
users: users.items,
);
// Now return the deserialized [PaymentsStarsStatus].
return returnValue;
}