mod arith;
pub(crate) mod big;
mod borrow;
#[cfg(feature = "borsh")]
mod borsh;
mod casts;
mod cmp;
#[cfg(feature = "num-traits")]
mod impl_num_traits;
mod mini;
#[cfg(feature = "serde")]
mod serde;
mod small;
#[cfg(test)]
mod tests;
mod traits;
pub use crate::rational::big::ParseRationalError;
pub use crate::rational::borrow::BorrowRational;
pub use crate::rational::mini::MiniRational;
#[allow(deprecated)]
pub use crate::rational::small::SmallRational;
use core::error::Error;
use core::fmt::{Display, Formatter, Result as FmtResult};
#[derive(Clone, Copy, Debug, Eq, PartialEq)]
pub struct TryFromFloatError {
pub(crate) _unused: (),
}
impl TryFromFloatError {
fn desc(&self) -> &str {
"conversion of infinite or NaN value attempted"
}
}
impl Display for TryFromFloatError {
fn fmt(&self, f: &mut Formatter) -> FmtResult {
Display::fmt(self.desc(), f)
}
}
impl Error for TryFromFloatError {
#[allow(deprecated)]
fn description(&self) -> &str {
self.desc()
}
}