EphemeralSendMessage.deserialize constructor

EphemeralSendMessage.deserialize(
  1. BinaryReader reader
)

Deserialize.

Implementation

factory EphemeralSendMessage.deserialize(BinaryReader reader) {
  // Read [EphemeralSendMessage] fields.
  final flags = reader.readInt32();
  final peer = reader.readObject() as InputPeerBase;
  final receiverId = reader.readObject() as InputUserBase;
  final hasQueryIdField = (flags & 1) != 0;
  final queryId = hasQueryIdField ? reader.readInt64() : null;
  final message = reader.readString();
  final hasEntitiesField = (flags & 2) != 0;
  final entities =
      hasEntitiesField ? reader.readVectorObject<MessageEntityBase>() : null;
  final hasMediaField = (flags & 4) != 0;
  final media = hasMediaField ? reader.readObject() as InputMediaBase : null;
  final hasReplyMarkupField = (flags & 8) != 0;
  final replyMarkup =
      hasReplyMarkupField ? reader.readObject() as ReplyMarkupBase : null;
  final hasRichMessageField = (flags & 16) != 0;
  final richMessage = hasRichMessageField
      ? reader.readObject() as InputRichMessageBase
      : null;
  final randomId = reader.readInt64();
  final hasReplyToField = (flags & 32) != 0;
  final replyTo =
      hasReplyToField ? reader.readObject() as InputReplyToBase : null;

  // Construct [EphemeralSendMessage] object.
  final returnValue = EphemeralSendMessage(
    peer: peer,
    receiverId: receiverId,
    queryId: queryId,
    message: message,
    entities: entities?.items,
    media: media,
    replyMarkup: replyMarkup,
    richMessage: richMessage,
    randomId: randomId,
    replyTo: replyTo,
  );

  // Now return the deserialized [EphemeralSendMessage].
  return returnValue;
}