AuthSentCode.deserialize constructor

AuthSentCode.deserialize(
  1. BinaryReader reader
)

Deserialize.

Implementation

factory AuthSentCode.deserialize(BinaryReader reader) {
  // Read [AuthSentCode] fields.
  final flags = reader.readInt32();
  final type = reader.readObject() as AuthSentCodeTypeBase;
  final phoneCodeHash = reader.readString();
  final hasNextTypeField = (flags & 2) != 0;
  final nextType =
      hasNextTypeField ? reader.readObject() as AuthCodeTypeBase : null;
  final hasTimeoutField = (flags & 4) != 0;
  final timeout = hasTimeoutField ? reader.readInt32() : null;

  // Construct [AuthSentCode] object.
  final returnValue = AuthSentCode(
    type: type,
    phoneCodeHash: phoneCodeHash,
    nextType: nextType,
    timeout: timeout,
  );

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