extern crate alloc;
pub use alloc::boxed::Box;
pub use alloc::format;
pub use alloc::string::{String, ToString};
pub use alloc::vec;
pub use alloc::vec::Vec;
#[allow(unused_imports)]
pub(crate) use crate as rstsr_common;
pub use core::fmt::{Debug, Display, Write};
pub use core::marker::PhantomData;
pub use core::mem::MaybeUninit;
pub use duplicate::{duplicate_item, substitute_item};
pub use itertools::{izip, Itertools};
pub use crate::alloc_vec::*;
pub use crate::axes_pair_index::*;
pub use crate::axis_index::*;
pub use crate::error::{rstsr_backtrace, Error, RSTSRError, RSTSRResultAPI, Result};
pub use crate::flags::*;
pub use crate::layout::exports::*;
pub use crate::tensordot_to_einsum::*;
pub use crate::util::*;
#[cfg(feature = "rayon")]
pub use crate::par_iter::*;
#[cfg(feature = "rayon")]
pub use rayon::ThreadPool;
pub use crate::{
impl_from_tuple_to_axes_index, rstsr_assert, rstsr_assert_eq, rstsr_errcode, rstsr_error, rstsr_invalid,
rstsr_pattern, rstsr_raise, s, slice,
};