encodeTo method

  1. @override
void encodeTo(
  1. StorageEntryType value,
  2. Output output
)
override

Convert self to a slice and append it to the destination.

Implementation

@override
void encodeTo(StorageEntryType value, Output output) {
  switch (value) {
    case final StorageEntryTypePlain storageEntryTypePlain:
      output.pushByte(0);
      CompactCodec.codec.encodeTo(storageEntryTypePlain.valueType, output);

    case final StorageEntryTypeMap storageEntryTypeMap:
      output.pushByte(1);

      // Encode each hasher
      SequenceCodec(StorageHasherEnum.codec).encodeTo(storageEntryTypeMap.hashers, output);

      // Encode key type ID
      CompactCodec.codec.encodeTo(storageEntryTypeMap.keyType, output);

      // Encode value type ID
      CompactCodec.codec.encodeTo(storageEntryTypeMap.valueType, output);
  }
}