/rust/registry/src/index.crates.io-1949cf8c6b5b557f/bnum-0.12.1/src/bint/fmt.rs
Line | Count | Source |
1 | | use core::fmt::{Binary, Debug, Display, Formatter, LowerExp, LowerHex, Octal, UpperExp, UpperHex}; |
2 | | |
3 | | macro_rules! fmt_trait { |
4 | | ($BInt: ident, $trait: tt) => { |
5 | | impl<const N: usize> $trait for $BInt<N> { |
6 | | #[inline] |
7 | 0 | fn fmt(&self, f: &mut Formatter) -> core::fmt::Result { |
8 | 0 | $trait::fmt(&self.bits, f) |
9 | 0 | } Unexecuted instantiation: <bnum::bint::BInt<_> as core::fmt::Binary>::fmt Unexecuted instantiation: <bnum::bint::BInt<_> as core::fmt::LowerHex>::fmt Unexecuted instantiation: <bnum::bint::BInt<_> as core::fmt::Octal>::fmt Unexecuted instantiation: <bnum::bint::BInt<_> as core::fmt::UpperHex>::fmt Unexecuted instantiation: <bnum::bint::BIntD32<_> as core::fmt::Binary>::fmt Unexecuted instantiation: <bnum::bint::BIntD32<_> as core::fmt::LowerHex>::fmt Unexecuted instantiation: <bnum::bint::BIntD32<_> as core::fmt::Octal>::fmt Unexecuted instantiation: <bnum::bint::BIntD32<_> as core::fmt::UpperHex>::fmt Unexecuted instantiation: <bnum::bint::BIntD16<_> as core::fmt::Binary>::fmt Unexecuted instantiation: <bnum::bint::BIntD16<_> as core::fmt::LowerHex>::fmt Unexecuted instantiation: <bnum::bint::BIntD16<_> as core::fmt::Octal>::fmt Unexecuted instantiation: <bnum::bint::BIntD16<_> as core::fmt::UpperHex>::fmt Unexecuted instantiation: <bnum::bint::BIntD8<_> as core::fmt::Binary>::fmt Unexecuted instantiation: <bnum::bint::BIntD8<_> as core::fmt::LowerHex>::fmt Unexecuted instantiation: <bnum::bint::BIntD8<_> as core::fmt::Octal>::fmt Unexecuted instantiation: <bnum::bint::BIntD8<_> as core::fmt::UpperHex>::fmt |
10 | | } |
11 | | }; |
12 | | } |
13 | | |
14 | | macro_rules! fmt { |
15 | | ($BUint: ident, $BInt: ident, $Digit: ident) => { |
16 | | fmt_trait!($BInt, Binary); |
17 | | |
18 | | impl<const N: usize> Display for $BInt<N> { |
19 | | #[inline] |
20 | 0 | fn fmt(&self, f: &mut Formatter) -> core::fmt::Result { |
21 | 0 | f.pad_integral(!self.is_negative(), "", &format!("{}", self.unsigned_abs())) |
22 | 0 | } Unexecuted instantiation: <bnum::bint::BInt<_> as core::fmt::Display>::fmt Unexecuted instantiation: <bnum::bint::BIntD32<_> as core::fmt::Display>::fmt Unexecuted instantiation: <bnum::bint::BIntD16<_> as core::fmt::Display>::fmt Unexecuted instantiation: <bnum::bint::BIntD8<_> as core::fmt::Display>::fmt |
23 | | } |
24 | | |
25 | | impl<const N: usize> Debug for $BInt<N> { |
26 | | #[inline] |
27 | 0 | fn fmt(&self, f: &mut Formatter) -> core::fmt::Result { |
28 | 0 | Display::fmt(&self, f) |
29 | 0 | } Unexecuted instantiation: <bnum::bint::BIntD32<_> as core::fmt::Debug>::fmt Unexecuted instantiation: <bnum::bint::BInt<_> as core::fmt::Debug>::fmt Unexecuted instantiation: <bnum::bint::BIntD16<_> as core::fmt::Debug>::fmt Unexecuted instantiation: <bnum::bint::BIntD8<_> as core::fmt::Debug>::fmt |
30 | | } |
31 | | |
32 | | impl<const N: usize> LowerExp for $BInt<N> { |
33 | | #[inline] |
34 | 0 | fn fmt(&self, f: &mut Formatter) -> core::fmt::Result { |
35 | 0 | let uint = self.unsigned_abs(); |
36 | 0 | f.pad_integral(!self.is_negative(), "", &format!("{:e}", uint)) |
37 | 0 | } Unexecuted instantiation: <bnum::bint::BInt<_> as core::fmt::LowerExp>::fmt Unexecuted instantiation: <bnum::bint::BIntD32<_> as core::fmt::LowerExp>::fmt Unexecuted instantiation: <bnum::bint::BIntD16<_> as core::fmt::LowerExp>::fmt Unexecuted instantiation: <bnum::bint::BIntD8<_> as core::fmt::LowerExp>::fmt |
38 | | } |
39 | | fmt_trait!($BInt, LowerHex); |
40 | | fmt_trait!($BInt, Octal); |
41 | | |
42 | | impl<const N: usize> UpperExp for $BInt<N> { |
43 | | #[inline] |
44 | 0 | fn fmt(&self, f: &mut Formatter) -> core::fmt::Result { |
45 | 0 | let uint = self.unsigned_abs(); |
46 | 0 | f.pad_integral(!self.is_negative(), "", &format!("{:E}", uint)) |
47 | 0 | } Unexecuted instantiation: <bnum::bint::BInt<_> as core::fmt::UpperExp>::fmt Unexecuted instantiation: <bnum::bint::BIntD32<_> as core::fmt::UpperExp>::fmt Unexecuted instantiation: <bnum::bint::BIntD16<_> as core::fmt::UpperExp>::fmt Unexecuted instantiation: <bnum::bint::BIntD8<_> as core::fmt::UpperExp>::fmt |
48 | | } |
49 | | |
50 | | fmt_trait!($BInt, UpperHex); |
51 | | }; |
52 | | } |
53 | | |
54 | | #[cfg(test)] |
55 | | crate::test::all_digit_tests! { |
56 | | crate::int::fmt::tests!(itest); |
57 | | } |
58 | | |
59 | | crate::macro_impl!(fmt); |