PhoneCall.deserialize constructor

PhoneCall.deserialize(
  1. BinaryReader reader
)

Deserialize.

Implementation

factory PhoneCall.deserialize(BinaryReader reader) {
  // Read [PhoneCall] fields.
  final flags = reader.readInt32();
  final p2pAllowed = (flags & 32) != 0;
  final video = (flags & 64) != 0;
  final id = reader.readInt64();
  final accessHash = reader.readInt64();
  final date = reader.readDateTime();
  final adminId = reader.readInt64();
  final participantId = reader.readInt64();
  final gAOrB = reader.readBytes();
  final keyFingerprint = reader.readInt64();
  final protocol = reader.readObject() as PhoneCallProtocolBase;
  final connections = reader.readVectorObject<PhoneConnectionBase>();
  final startDate = reader.readDateTime();

  // Construct [PhoneCall] object.
  final returnValue = PhoneCall(
    p2pAllowed: p2pAllowed,
    video: video,
    id: id,
    accessHash: accessHash,
    date: date,
    adminId: adminId,
    participantId: participantId,
    gAOrB: gAOrB,
    keyFingerprint: keyFingerprint,
    protocol: protocol,
    connections: connections,
    startDate: startDate,
  );

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