Skip to main content

sliding_quantile/lib_actual/
aliases.rs

1/// Convenient type aliases for [`Quantile`s](crate::Quantile)
2/// backed by heap-allocated [`Vec`s](alloc::vec::Vec).
3#[cfg(any(feature = "std", feature = "alloc"))]
4#[cfg_attr(docsrs, doc(cfg(any(feature = "std", feature = "alloc"))))]
5pub mod vec {
6    /// [`Quantile`](crate::Quantile) backed by heap-allocated [`Vec`s](alloc::vec::Vec).
7    pub type Quantile<Num> = crate::Quantile<Num, alloc::vec::Vec<Num>, alloc::vec::Vec<usize>>;
8
9    pub mod f32 {
10        /// [`Quantile`](crate::Quantile)  for [`f32`] data,
11        /// backed by heap-allocated [`Vec`s](alloc::vec::Vec).
12        pub type Quantile = super::Quantile<f32>;
13    }
14    pub mod f64 {
15        /// [`Quantile`](crate::Quantile)  for [`f64`] data,
16        /// backed by heap-allocated [`Vec`s](alloc::vec::Vec).
17        pub type Quantile = super::Quantile<f64>;
18    }
19}
20
21/// Convenient type aliases for [`Quantile`s](crate::Quantile)
22/// backed by stack-allocated [arrays](prim@array).
23#[cfg_attr(docsrs, doc(cfg(any(feature = "std", feature = "libm"))))]
24pub mod array {
25    /// [`Quantile`](crate::Quantile) backed by stack-allocated [arrays](prim@array).
26    pub type Quantile<Num, const WIN_SIZE: usize> =
27        crate::Quantile<Num, [Num; WIN_SIZE], [usize; WIN_SIZE]>;
28
29    pub mod f32 {
30        /// [`Quantile`](crate::Quantile) for [`f32`] data,
31        /// backed by stack-allocated [arrays](prim@array).
32        pub type Quantile<const WIN_SIZE: usize> = super::Quantile<f32, WIN_SIZE>;
33    }
34    pub mod f64 {
35        /// [`Quantile`](crate::Quantile) for [`f64`] data,
36        /// backed by stack-allocated [arrays](prim@array).
37        pub type Quantile<const WIN_SIZE: usize> = super::Quantile<f64, WIN_SIZE>;
38    }
39}