1
2
3
4
5
6
7
8
9
10
11
12
13
14
use crate::number::Number;
use crate::Reverse;

impl Reverse for Number {
    type Output = Number;

    fn reverse(self) -> Self::Output {
        match self {
            Number::Int(i) => Number::Int(i.reverse_bits()),
            Number::UInt(u) => Number::UInt(u.reverse_bits()),
            Number::Float(f) => Number::Float(f64::from_bits(f.to_bits().reverse_bits())),
        }
    }
}