MessagesForwardMessages.deserialize constructor

MessagesForwardMessages.deserialize(
  1. BinaryReader reader
)

Deserialize.

Implementation

factory MessagesForwardMessages.deserialize(BinaryReader reader) {
  // Read [MessagesForwardMessages] fields.
  final flags = reader.readInt32();
  final silent = (flags & 32) != 0;
  final background = (flags & 64) != 0;
  final withMyScore = (flags & 256) != 0;
  final dropAuthor = (flags & 2048) != 0;
  final dropMediaCaptions = (flags & 4096) != 0;
  final noforwards = (flags & 16384) != 0;
  final allowPaidFloodskip = (flags & 524288) != 0;
  final fromPeer = reader.readObject() as InputPeerBase;
  final id = reader.readVectorInt32();
  final randomId = reader.readVectorInt64();
  final toPeer = reader.readObject() as InputPeerBase;
  final hasTopMsgIdField = (flags & 512) != 0;
  final topMsgId = hasTopMsgIdField ? reader.readInt32() : null;
  final hasReplyToField = (flags & 4194304) != 0;
  final replyTo =
      hasReplyToField ? reader.readObject() as InputReplyToBase : null;
  final hasScheduleDateField = (flags & 1024) != 0;
  final scheduleDate = hasScheduleDateField ? reader.readDateTime() : null;
  final hasScheduleRepeatPeriodField = (flags & 16777216) != 0;
  final scheduleRepeatPeriod =
      hasScheduleRepeatPeriodField ? reader.readInt32() : null;
  final hasSendAsField = (flags & 8192) != 0;
  final sendAs = hasSendAsField ? reader.readObject() as InputPeerBase : null;
  final hasQuickReplyShortcutField = (flags & 131072) != 0;
  final quickReplyShortcut = hasQuickReplyShortcutField
      ? reader.readObject() as InputQuickReplyShortcutBase
      : null;
  final hasEffectField = (flags & 262144) != 0;
  final effect = hasEffectField ? reader.readInt64() : null;
  final hasVideoTimestampField = (flags & 1048576) != 0;
  final videoTimestamp = hasVideoTimestampField ? reader.readInt32() : null;
  final hasAllowPaidStarsField = (flags & 2097152) != 0;
  final allowPaidStars = hasAllowPaidStarsField ? reader.readInt64() : null;
  final hasSuggestedPostField = (flags & 8388608) != 0;
  final suggestedPost =
      hasSuggestedPostField ? reader.readObject() as SuggestedPostBase : null;

  // Construct [MessagesForwardMessages] object.
  final returnValue = MessagesForwardMessages(
    silent: silent,
    background: background,
    withMyScore: withMyScore,
    dropAuthor: dropAuthor,
    dropMediaCaptions: dropMediaCaptions,
    noforwards: noforwards,
    allowPaidFloodskip: allowPaidFloodskip,
    fromPeer: fromPeer,
    id: id.items,
    randomId: randomId.items,
    toPeer: toPeer,
    topMsgId: topMsgId,
    replyTo: replyTo,
    scheduleDate: scheduleDate,
    scheduleRepeatPeriod: scheduleRepeatPeriod,
    sendAs: sendAs,
    quickReplyShortcut: quickReplyShortcut,
    effect: effect,
    videoTimestamp: videoTimestamp,
    allowPaidStars: allowPaidStars,
    suggestedPost: suggestedPost,
  );

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