RequestedPeerUser.deserialize constructor

RequestedPeerUser.deserialize(
  1. BinaryReader reader
)

Deserialize.

Implementation

factory RequestedPeerUser.deserialize(BinaryReader reader) {
  // Read [RequestedPeerUser] fields.
  final flags = reader.readInt32();
  final userId = reader.readInt64();
  final hasFirstNameField = (flags & 1) != 0;
  final firstName = hasFirstNameField ? reader.readString() : null;
  final hasLastNameField = (flags & 1) != 0;
  final lastName = hasLastNameField ? reader.readString() : null;
  final hasUsernameField = (flags & 2) != 0;
  final username = hasUsernameField ? reader.readString() : null;
  final hasPhotoField = (flags & 4) != 0;
  final photo = hasPhotoField ? reader.readObject() as PhotoBase : null;

  // Construct [RequestedPeerUser] object.
  final returnValue = RequestedPeerUser(
    userId: userId,
    firstName: firstName,
    lastName: lastName,
    username: username,
    photo: photo,
  );

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