use crate::key_composer::{KeyComposer, KeyTag, SmallKey};
#[inline]
pub fn meta(kc: &KeyComposer, key: &[u8]) -> SmallKey {
kc.compose_meta_key_stack(KeyTag::TDigestMeta.as_slice(), key)
}
#[inline]
pub fn meta_prefix(kc: &KeyComposer) -> Vec<u8> {
kc.compose_meta_prefix(KeyTag::TDigestMeta.as_slice())
}
#[inline]
pub fn buffer_chunk(kc: &KeyComposer, key: &[u8], chunk_idx: u32) -> SmallKey {
kc.compose_subkey_stack(
KeyTag::TDigestData.as_slice(),
key,
&chunk_idx.to_be_bytes(),
)
}
#[inline]
pub fn prefix(kc: &KeyComposer, key: &[u8]) -> Vec<u8> {
kc.compose_prefix(KeyTag::TDigestData.as_slice(), key)
}
#[inline]
pub fn prefix_stack(kc: &KeyComposer, key: &[u8]) -> SmallKey {
kc.compose_prefix_stack(KeyTag::TDigestData.as_slice(), key)
}