MessageViews.deserialize constructor

MessageViews.deserialize(
  1. BinaryReader reader
)

Deserialize.

Implementation

factory MessageViews.deserialize(BinaryReader reader) {
  // Read [MessageViews] fields.
  final flags = reader.readInt32();
  final hasViewsField = (flags & 1) != 0;
  final views = hasViewsField ? reader.readInt32() : null;
  final hasForwardsField = (flags & 2) != 0;
  final forwards = hasForwardsField ? reader.readInt32() : null;
  final hasRepliesField = (flags & 4) != 0;
  final replies =
      hasRepliesField ? reader.readObject() as MessageRepliesBase : null;

  // Construct [MessageViews] object.
  final returnValue = MessageViews(
    views: views,
    forwards: forwards,
    replies: replies,
  );

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