PaymentsUpdateStarGiftCollection.deserialize constructor

PaymentsUpdateStarGiftCollection.deserialize(
  1. BinaryReader reader
)

Deserialize.

Implementation

factory PaymentsUpdateStarGiftCollection.deserialize(BinaryReader reader) {
  // Read [PaymentsUpdateStarGiftCollection] fields.
  final flags = reader.readInt32();
  final peer = reader.readObject() as InputPeerBase;
  final collectionId = reader.readInt32();
  final hasTitleField = (flags & 1) != 0;
  final title = hasTitleField ? reader.readString() : null;
  final hasDeleteStargiftField = (flags & 2) != 0;
  final deleteStargift = hasDeleteStargiftField
      ? reader.readVectorObject<InputSavedStarGiftBase>()
      : null;
  final hasAddStargiftField = (flags & 4) != 0;
  final addStargift = hasAddStargiftField
      ? reader.readVectorObject<InputSavedStarGiftBase>()
      : null;
  final hasOrderField = (flags & 8) != 0;
  final order = hasOrderField
      ? reader.readVectorObject<InputSavedStarGiftBase>()
      : null;

  // Construct [PaymentsUpdateStarGiftCollection] object.
  final returnValue = PaymentsUpdateStarGiftCollection(
    peer: peer,
    collectionId: collectionId,
    title: title,
    deleteStargift: deleteStargift?.items,
    addStargift: addStargift?.items,
    order: order?.items,
  );

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