1use crate::{
2 rbig::{RBig, Relaxed},
3 repr::Repr,
4};
5use core::fmt::{self, Write};
6
7impl fmt::Debug for Repr {
8 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
9 if f.alternate() {
10 f.debug_struct("Repr")
11 .field("numerator", &format_args!("{:#?}", &self.numerator))
12 .field("denominator", &format_args!("{:#?}", &self.denominator))
13 .finish()
14 } else {
15 f.write_fmt(format_args!("{:?} / {:?}", &self.numerator, &self.denominator))
16 }
17 }
18}
19
20impl fmt::Display for Repr {
21 #[inline]
22 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
23 if self.denominator.is_one() {
24 fmt::Display::fmt(&self.numerator, f)
25 } else {
26 fmt::Display::fmt(&self.numerator, f)?;
27 f.write_char('/')?;
28 fmt::Display::fmt(&self.denominator, f)
29 }
30 }
31}
32
33impl fmt::Debug for RBig {
34 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
35 if f.alternate() {
36 f.debug_struct("RBig")
37 .field("numerator", &format_args!("{:#?}", self.numerator()))
38 .field("denominator", &format_args!("{:#?}", self.denominator()))
39 .finish()
40 } else {
41 f.write_fmt(format_args!("{:?} / {:?}", self.numerator(), self.denominator()))
42 }
43 }
44}
45
46impl fmt::Display for RBig {
47 #[inline]
48 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
49 fmt::Display::fmt(&self.0, f)
50 }
51}
52
53impl fmt::Debug for Relaxed {
54 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
55 if f.alternate() {
56 f.debug_struct("Relaxed")
57 .field("numerator", &format_args!("{:#?}", self.numerator()))
58 .field("denominator", &format_args!("{:#?}", self.denominator()))
59 .finish()
60 } else {
61 f.write_fmt(format_args!("{:?} / {:?}", self.numerator(), self.denominator()))
62 }
63 }
64}
65
66impl fmt::Display for Relaxed {
67 #[inline]
68 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
69 fmt::Display::fmt(&self.0, f)
70 }
71}