devela/num/
mod.rs

1// devela::num
2//
3//! Numerical types and math operations.
4#![doc = crate::doc_!(modules: crate; num: geom, logic, niche, ord, quant, rand)]
5#![doc = crate::doc_!(newline)]
6//!
7#![doc = crate::doc_!(extends: cmp, num)]
8//
9// safety
10#![cfg_attr(feature = "safe_num", forbid(unsafe_code))]
11
12mod _private; // upcasted_op!, impl_ops!
13
14mod error; // NumError, NumResult
15mod float; // fsize, ExtFloat, ExtFloatConst, Float
16mod frac; // Frac
17mod int; // [i|u]size_[down|up], Int
18mod no; // NoNum
19mod primitive; // Cast, Primitive[Cast|Join|Split]
20mod sign; // Sign
21mod traits; // Num, NumRef, ExtNumConst
22
23#[cfg(feature = "unit")]
24#[cfg_attr(feature = "nightly_doc", doc(cfg(feature = "unit")))]
25mod unit; // Unit, Unit[Bi|Si]
26
27pub mod geom;
28pub mod logic;
29pub mod niche; // NonZero*, NonValue*, NonRange*
30pub mod ord; // Compare
31pub mod quant; // Cycle*, Interval
32pub mod rand;
33
34crate::items! { // structural access: _mods, _pub_mods, _internals, _all, _always
35    #[allow(unused)]
36    pub use {_internals::*, _mods::*};
37    #[allow(unused)] #[doc(hidden, no_inline)]
38    pub use {_always::*, _pub_mods::*};
39
40    mod _mods { #![allow(unused)]
41        pub use super::{
42            error::*, float::_all::*, frac::_all::*, int::_all::*,
43            no::*, primitive::_all::*, sign::*, traits::*,
44        };
45        #[cfg(feature = "unit")]
46        pub use super::unit::_all::*;
47        // WIPZONE
48        pub use super::power::*;
49    }
50    mod _pub_mods {
51        pub use super::{
52            geom::_all::*, logic::_all::*, niche::_all::*,
53            ord::_all::*, quant::_all::*,rand::_all::*,
54        };
55        // WIPZONE
56        // pub use super::symb::_all::*;
57    }
58    pub(super) mod _internals { #![allow(unused)]
59        pub(crate) use super::{_private::*, rand::_internals::*};
60    }
61    pub(super) mod _all {
62        #[doc(inline)]
63        pub use super::{_mods::*, _pub_mods::*};
64    }
65    pub(super) mod _always { #![allow(unused)]
66        pub use super::{
67            ord::_always::*, float::_always::*, int::_always::*, niche::_always::*,
68        };
69    }
70}
71// WIPZONE
72// pub mod symb;
73mod power; // Tp