EphemeralMessage.deserialize constructor
EphemeralMessage.deserialize(
- BinaryReader reader
Deserialize.
Implementation
factory EphemeralMessage.deserialize(BinaryReader reader) {
// Read [EphemeralMessage] fields.
final flags = reader.readInt32();
final out = (flags & 1) != 0;
final id = reader.readInt32();
final fromId = reader.readObject() as PeerBase;
final peerId = reader.readObject() as PeerBase;
final receiverId = reader.readInt64();
final hasTopMsgIdField = (flags & 2) != 0;
final topMsgId = hasTopMsgIdField ? reader.readInt32() : null;
final date = reader.readDateTime();
final message = reader.readString();
final hasEntitiesField = (flags & 4) != 0;
final entities =
hasEntitiesField ? reader.readVectorObject<MessageEntityBase>() : null;
final hasMediaField = (flags & 8) != 0;
final media =
hasMediaField ? reader.readObject() as MessageMediaBase : null;
final hasReplyMarkupField = (flags & 16) != 0;
final replyMarkup =
hasReplyMarkupField ? reader.readObject() as ReplyMarkupBase : null;
final hasReplyToField = (flags & 64) != 0;
final replyTo =
hasReplyToField ? reader.readObject() as MessageReplyHeaderBase : null;
// Construct [EphemeralMessage] object.
final returnValue = EphemeralMessage(
out: out,
id: id,
fromId: fromId,
peerId: peerId,
receiverId: receiverId,
topMsgId: topMsgId,
date: date,
message: message,
entities: entities?.items,
media: media,
replyMarkup: replyMarkup,
replyTo: replyTo,
);
// Now return the deserialized [EphemeralMessage].
return returnValue;
}