MessagesSendMultiMedia.deserialize constructor

MessagesSendMultiMedia.deserialize(
  1. BinaryReader reader
)

Deserialize.

Implementation

factory MessagesSendMultiMedia.deserialize(BinaryReader reader) {
  // Read [MessagesSendMultiMedia] 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 multiMedia = reader.readVectorObject<InputSingleMediaBase>();
  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 [MessagesSendMultiMedia] object.
  final returnValue = MessagesSendMultiMedia(
    silent: silent,
    background: background,
    clearDraft: clearDraft,
    noforwards: noforwards,
    updateStickersetsOrder: updateStickersetsOrder,
    invertMedia: invertMedia,
    peer: peer,
    replyTo: replyTo,
    multiMedia: multiMedia,
    scheduleDate: scheduleDate,
    sendAs: sendAs,
  );

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