use cipher::array::Array;
pub(super) mod aes128;
pub(super) mod aes192;
pub(super) mod aes256;
#[cfg(feature = "hazmat")]
pub(crate) mod hazmat;
mod mix_columns;
mod sbox;
mod utils;
mod word;
pub(super) use word::Word;
type State<W> = [W; 8];
cpubits::cpubits! {
16 => {
pub(super) type NativeWord = u16;
}
32 => {
pub(super) type NativeWord = u32;
}
64 => {
pub(super) type NativeWord = u64;
}
}
pub(super) type NativeBatchSize = <NativeWord as Word>::Blocks;
pub(super) type BatchBlocks<W> = Array<crate::Block, <W as Word>::Blocks>;
pub(super) type MinWord = u16;