MessageReplyHeader.deserialize constructor
MessageReplyHeader.deserialize(
- BinaryReader reader
Deserialize.
Implementation
factory MessageReplyHeader.deserialize(BinaryReader reader) {
// Read [MessageReplyHeader] fields.
final flags = reader.readInt32();
final replyToScheduled = (flags & 4) != 0;
final forumTopic = (flags & 8) != 0;
final quote = (flags & 512) != 0;
final hasReplyToMsgIdField = (flags & 16) != 0;
final replyToMsgId = hasReplyToMsgIdField ? reader.readInt32() : null;
final hasReplyToPeerIdField = (flags & 1) != 0;
final replyToPeerId =
hasReplyToPeerIdField ? reader.readObject() as PeerBase : null;
final hasReplyFromField = (flags & 32) != 0;
final replyFrom =
hasReplyFromField ? reader.readObject() as MessageFwdHeaderBase : null;
final hasReplyMediaField = (flags & 256) != 0;
final replyMedia =
hasReplyMediaField ? reader.readObject() as MessageMediaBase : null;
final hasReplyToTopIdField = (flags & 2) != 0;
final replyToTopId = hasReplyToTopIdField ? reader.readInt32() : null;
final hasQuoteTextField = (flags & 64) != 0;
final quoteText = hasQuoteTextField ? reader.readString() : null;
final hasQuoteEntitiesField = (flags & 128) != 0;
final quoteEntities = hasQuoteEntitiesField
? reader.readVectorObject<MessageEntityBase>()
: null;
final hasQuoteOffsetField = (flags & 1024) != 0;
final quoteOffset = hasQuoteOffsetField ? reader.readInt32() : null;
// Construct [MessageReplyHeader] object.
final returnValue = MessageReplyHeader(
replyToScheduled: replyToScheduled,
forumTopic: forumTopic,
quote: quote,
replyToMsgId: replyToMsgId,
replyToPeerId: replyToPeerId,
replyFrom: replyFrom,
replyMedia: replyMedia,
replyToTopId: replyToTopId,
quoteText: quoteText,
quoteEntities: quoteEntities,
quoteOffset: quoteOffset,
);
// Now return the deserialized [MessageReplyHeader].
return returnValue;
}