read method

  1. @override
Product read(
  1. BinaryReader reader
)
override

Is called when a value has to be decoded.

Implementation

@override
Product read(BinaryReader reader) {
  final numOfFields = reader.readByte();
  final fields = <int, dynamic>{
    for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(),
  };
  return Product(
    id: fields[0] as String?,
    name: fields[1] as String,
    description: fields[2] as String,
    price: fields[3] as double,
    type: fields[4] as ProductType,
    listingType: fields[5] as ListingType,
    sellerId: fields[6] as String,
    location: fields[7] as String?,
    createdAt: fields[8] as DateTime?,
    images: (fields[9] as List?)?.cast<String>(),
    isAvailable: fields[10] as bool,
  );
}