konst/
range.rs

1//! `const fn` equivalents of range methods.
2
3/// `const fn`s for comparing range for equality and ordering.
4#[cfg(feature = "cmp")]
5#[cfg_attr(feature = "docsrs", doc(cfg(feature = "cmp")))]
6pub mod cmp;
7
8/// Const-iterator for [`Range`](core::ops::Range)
9///
10/// This is constructed like this:
11/// ```rust
12/// # let _ =
13/// konst::iter::into_iter!(0..10)
14/// # ;
15/// ```
16#[cfg(feature = "iter")]
17#[cfg_attr(feature = "docsrs", doc(cfg(feature = "iter")))]
18pub use konst_kernel::into_iter::range_into_iter::RangeIter;
19
20/// Reversed const-iterator for [`Range`](core::ops::Range)
21///
22///
23/// This is constructed like this:
24/// ```rust
25/// # let _ =
26/// konst::iter::into_iter!(0..10).rev()
27/// # ;
28/// ```
29#[cfg(feature = "iter")]
30#[cfg_attr(feature = "docsrs", doc(cfg(feature = "iter")))]
31pub use konst_kernel::into_iter::range_into_iter::RangeIterRev;
32
33/// Const-iterator for [`RangeInclusive`](core::ops::RangeInclusive)
34///
35/// This is constructed like this:
36/// ```rust
37/// # let _ =
38/// konst::iter::into_iter!(0..=10)
39/// # ;
40/// ```
41#[cfg(feature = "iter")]
42#[cfg_attr(feature = "docsrs", doc(cfg(feature = "iter")))]
43pub use konst_kernel::into_iter::range_into_iter::RangeInclusiveIter;
44
45/// Reversed const-iterator for [`RangeInclusive`](core::ops::RangeInclusive)
46///
47/// This is constructed like this:
48/// ```rust
49/// # let _ =
50/// konst::iter::into_iter!(0..=10).rev()
51/// # ;
52/// ```
53#[cfg(feature = "iter")]
54#[cfg_attr(feature = "docsrs", doc(cfg(feature = "iter")))]
55pub use konst_kernel::into_iter::range_into_iter::RangeInclusiveIterRev;
56
57/// Const-iterator for [`RangeFrom`](core::ops::RangeFrom)
58///
59/// This is constructed like this:
60/// ```rust
61/// # let _ =
62/// konst::iter::into_iter!(0..)
63/// # ;
64/// ```
65#[cfg(feature = "iter")]
66#[cfg_attr(feature = "docsrs", doc(cfg(feature = "iter")))]
67pub use konst_kernel::into_iter::range_into_iter::RangeFromIter;