MessagesSendMedia.deserialize constructor

MessagesSendMedia.deserialize(
  1. BinaryReader reader
)

Deserialize.

Implementation

factory MessagesSendMedia.deserialize(BinaryReader reader) {
  // Read [MessagesSendMedia] fields.
  final flags = reader.readInt32();
  final silent = (flags & 32) != 0;
  final background = (flags & 64) != 0;
  final clearDraft = (flags & 128) != 0;
  final noforwards = (flags & 16384) != 0;
  final updateStickersetsOrder = (flags & 32768) != 0;
  final invertMedia = (flags & 65536) != 0;
  final peer = reader.readObject() as InputPeerBase;
  final hasReplyToField = (flags & 1) != 0;
  final replyTo =
      hasReplyToField ? reader.readObject() as InputReplyToBase : null;
  final media = reader.readObject() as InputMediaBase;
  final message = reader.readString();
  final randomId = reader.readInt64();
  final hasReplyMarkupField = (flags & 4) != 0;
  final replyMarkup =
      hasReplyMarkupField ? reader.readObject() as ReplyMarkupBase : null;
  final hasEntitiesField = (flags & 8) != 0;
  final entities =
      hasEntitiesField ? reader.readVectorObject<MessageEntityBase>() : null;
  final hasScheduleDateField = (flags & 1024) != 0;
  final scheduleDate = hasScheduleDateField ? reader.readDateTime() : null;
  final hasSendAsField = (flags & 8192) != 0;
  final sendAs = hasSendAsField ? reader.readObject() as InputPeerBase : null;

  // Construct [MessagesSendMedia] object.
  final returnValue = MessagesSendMedia(
    silent: silent,
    background: background,
    clearDraft: clearDraft,
    noforwards: noforwards,
    updateStickersetsOrder: updateStickersetsOrder,
    invertMedia: invertMedia,
    peer: peer,
    replyTo: replyTo,
    media: media,
    message: message,
    randomId: randomId,
    replyMarkup: replyMarkup,
    entities: entities,
    scheduleDate: scheduleDate,
    sendAs: sendAs,
  );

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