///|
pub(all) enum ChecksumKind {
Sha256
TextSumV1
BytesSumV1
NoChecksum
UnknownChecksumKind
} derive(Debug, Eq, ToJson, FromJson)
///|
pub fn checksum_kind_label(kind : ChecksumKind) -> String {
match kind {
Sha256 => "sha256"
TextSumV1 => "text-sum-v1"
BytesSumV1 => "bytes-sum-v1"
NoChecksum => "none"
UnknownChecksumKind => "unknown"
}
}
///|
pub fn declared_checksum(
kind : ChecksumKind,
value : String,
) -> DeclaredChecksum {
{ kind, value }
}
///|
pub(all) struct DeclaredChecksum {
kind : ChecksumKind
value : String
} derive(Debug, Eq, ToJson, FromJson)