cfg_if::cfg_if! {
if #[cfg(feature = "crypto-sm")] {
mod sm3;
mod sm4;
pub(crate) use sm3::{derive_key, digest};
pub(crate) use sm4::{decrypt, encrypt};
pub(crate) type Digest = ::sm3::Sm3;
} else {
mod aes256;
mod sha256;
pub(crate) use aes256::{decrypt, encrypt};
pub(crate) use sha256::{derive_key, digest};
pub(crate) type Digest = ::sha2::Sha256;
}
}