i256/int/
constants.rs

1//! Associated constants for our types.
2
3#[rustfmt::skip]
4macro_rules! define {
5    (
6        bits => $bits:expr,
7        wide_type => $wide_t:ty,
8        see_type => $see_t:ty $(,)?
9    ) => {
10        $crate::shared::constants::define!(
11            bits => $bits,
12            wide_type => $wide_t,
13            low_type => $crate::ULimb,
14            high_type => $crate::ILimb,
15            see_type => $see_t,
16        );
17
18        #[deprecated]
19        #[inline(always)]
20        #[doc = $crate::shared::constants::min_value_doc!($see_t)]
21        pub const fn min_value() -> Self {
22            let mut limbs = [0; Self::LIMBS];
23            ne_index!(limbs[Self::LIMBS - 1] = $crate::ILimb::MIN as $crate::ULimb);
24            Self::from_ne_limbs(limbs)
25        }
26
27        #[deprecated]
28        #[inline(always)]
29        #[doc = $crate::shared::constants::max_value_doc!($see_t)]
30        pub const fn max_value() -> Self {
31            let mut limbs = [$crate::ULimb::MAX; Self::LIMBS];
32            ne_index!(limbs[Self::LIMBS - 1] = $crate::ILimb::MAX as $crate::ULimb);
33            Self::from_ne_limbs(limbs)
34        }
35
36        #[doc = $crate::shared::constants::is_signed_doc!()]
37        pub const IS_SIGNED: bool = true;
38    };
39}
40
41pub(crate) use define;