MessageFwdHeader.deserialize constructor
MessageFwdHeader.deserialize(
- BinaryReader reader
Deserialize.
Implementation
factory MessageFwdHeader.deserialize(BinaryReader reader) {
// Read [MessageFwdHeader] fields.
final flags = reader.readInt32();
final imported = (flags & 128) != 0;
final savedOut = (flags & 2048) != 0;
final hasFromIdField = (flags & 1) != 0;
final fromId = hasFromIdField ? reader.readObject() as PeerBase : null;
final hasFromNameField = (flags & 32) != 0;
final fromName = hasFromNameField ? reader.readString() : null;
final date = reader.readDateTime();
final hasChannelPostField = (flags & 4) != 0;
final channelPost = hasChannelPostField ? reader.readInt32() : null;
final hasPostAuthorField = (flags & 8) != 0;
final postAuthor = hasPostAuthorField ? reader.readString() : null;
final hasSavedFromPeerField = (flags & 16) != 0;
final savedFromPeer =
hasSavedFromPeerField ? reader.readObject() as PeerBase : null;
final hasSavedFromMsgIdField = (flags & 16) != 0;
final savedFromMsgId = hasSavedFromMsgIdField ? reader.readInt32() : null;
final hasSavedFromIdField = (flags & 256) != 0;
final savedFromId =
hasSavedFromIdField ? reader.readObject() as PeerBase : null;
final hasSavedFromNameField = (flags & 512) != 0;
final savedFromName = hasSavedFromNameField ? reader.readString() : null;
final hasSavedDateField = (flags & 1024) != 0;
final savedDate = hasSavedDateField ? reader.readDateTime() : null;
final hasPsaTypeField = (flags & 64) != 0;
final psaType = hasPsaTypeField ? reader.readString() : null;
// Construct [MessageFwdHeader] object.
final returnValue = MessageFwdHeader(
imported: imported,
savedOut: savedOut,
fromId: fromId,
fromName: fromName,
date: date,
channelPost: channelPost,
postAuthor: postAuthor,
savedFromPeer: savedFromPeer,
savedFromMsgId: savedFromMsgId,
savedFromId: savedFromId,
savedFromName: savedFromName,
savedDate: savedDate,
psaType: psaType,
);
// Now return the deserialized [MessageFwdHeader].
return returnValue;
}