1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
use core::fmt:: { self, Debug, Display };
#[cfg(feature = "std")]
use std::error::Error;

#[derive(Clone, Copy, Debug)]
pub enum ConversionError {
    NotF64,
    NotI32,
    ZeroDivide,
    Overflow,
}

impl Display for ConversionError {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> Result<(), fmt::Error> {
        Debug::fmt(self, f)
    }
}

#[cfg(feature = "std")]
impl Error for ConversionError {}