Dialog.deserialize constructor
Dialog.deserialize(
- BinaryReader reader
Deserialize.
Implementation
factory Dialog.deserialize(BinaryReader reader) {
// Read [Dialog] fields.
final flags = reader.readInt32();
final pinned = (flags & 4) != 0;
final unreadMark = (flags & 8) != 0;
final viewForumAsMessages = (flags & 64) != 0;
final peer = reader.readObject() as PeerBase;
final topMessage = reader.readInt32();
final readInboxMaxId = reader.readInt32();
final readOutboxMaxId = reader.readInt32();
final unreadCount = reader.readInt32();
final unreadMentionsCount = reader.readInt32();
final unreadReactionsCount = reader.readInt32();
final notifySettings = reader.readObject() as PeerNotifySettingsBase;
final hasPtsField = (flags & 1) != 0;
final pts = hasPtsField ? reader.readInt32() : null;
final hasDraftField = (flags & 2) != 0;
final draft =
hasDraftField ? reader.readObject() as DraftMessageBase : null;
final hasFolderIdField = (flags & 16) != 0;
final folderId = hasFolderIdField ? reader.readInt32() : null;
final hasTtlPeriodField = (flags & 32) != 0;
final ttlPeriod = hasTtlPeriodField ? reader.readInt32() : null;
// Construct [Dialog] object.
final returnValue = Dialog(
pinned: pinned,
unreadMark: unreadMark,
viewForumAsMessages: viewForumAsMessages,
peer: peer,
topMessage: topMessage,
readInboxMaxId: readInboxMaxId,
readOutboxMaxId: readOutboxMaxId,
unreadCount: unreadCount,
unreadMentionsCount: unreadMentionsCount,
unreadReactionsCount: unreadReactionsCount,
notifySettings: notifySettings,
pts: pts,
draft: draft,
folderId: folderId,
ttlPeriod: ttlPeriod,
);
// Now return the deserialized [Dialog].
return returnValue;
}