1pub(crate) mod generic;
23// The main implementation functions.
4cfg_if::cfg_if! {
5if #[cfg(feature = "force-generic")] {
6pub(crate) use generic as imp;
7 } else if #[cfg(feature = "portable-simd")] {
8pub(crate) mod portable_simd;
9pub(crate) use portable_simd as imp;
10 } else if #[cfg(any(target_arch = "x86", target_arch = "x86_64"))] {
11pub(crate) mod x86;
12pub(crate) use x86 as imp;
13 } else if #[cfg(target_arch = "aarch64")] {
14pub(crate) mod aarch64;
15pub(crate) use aarch64 as imp;
16// See https://github.com/DaniPopes/const-hex/issues/17
17} else if #[cfg(all(target_arch = "wasm32", target_feature = "simd128"))] {
18pub(crate) mod wasm32;
19pub(crate) use wasm32 as imp;
20 } else {
21pub(crate) use generic as imp;
22 }
23}