pub struct DomainError(/* private fields */);
Expand description
Error that indicates a math function evaluated to an out of range value.
Domain errors have an associated message.
This error corresponds to the Ruby Math::DomainError
Exception class. It
can be used to differentiate between NaN
inputs and what would
be NaN
outputs.
§Examples
let err = DomainError::new();
assert_eq!(err.message(), "Math::DomainError");
let err = DomainError::with_message(r#"Numerical argument is out of domain - "acos""#);
assert_eq!(
err.message(),
r#"Numerical argument is out of domain - "acos""#
);
Implementations§
Source§impl DomainError
impl DomainError
Sourcepub const fn new() -> Self
pub const fn new() -> Self
Construct a new, default domain error.
§Examples
const ERR: DomainError = DomainError::new();
assert_eq!(ERR.message(), "Math::DomainError");
Sourcepub const fn with_message(message: &'static str) -> Self
pub const fn with_message(message: &'static str) -> Self
Construct a new, domain error with a message.
§Examples
const ERR: DomainError =
DomainError::with_message(r#"Numerical argument is out of domain - "acos""#);
assert_eq!(
ERR.message(),
r#"Numerical argument is out of domain - "acos""#
);
Sourcepub const fn message(self) -> &'static str
pub const fn message(self) -> &'static str
Retrieve the exception message associated with this error.
§Examples
let err = DomainError::new();
assert_eq!(err.message(), "Math::DomainError");
let err = DomainError::with_message(r#"Numerical argument is out of domain - "acos""#);
assert_eq!(
err.message(),
r#"Numerical argument is out of domain - "acos""#
);
Trait Implementations§
Source§impl Clone for DomainError
impl Clone for DomainError
Source§fn clone(&self) -> DomainError
fn clone(&self) -> DomainError
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for DomainError
impl Debug for DomainError
Source§impl Default for DomainError
impl Default for DomainError
Source§fn default() -> DomainError
fn default() -> DomainError
Returns the “default value” for a type. Read more
Source§impl Display for DomainError
impl Display for DomainError
Source§impl Error for DomainError
impl Error for DomainError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl From<&'static str> for DomainError
impl From<&'static str> for DomainError
Source§impl From<DomainError> for Error
impl From<DomainError> for Error
Source§fn from(err: DomainError) -> Self
fn from(err: DomainError) -> Self
Converts to this type from the input type.
Source§impl Hash for DomainError
impl Hash for DomainError
Source§impl Ord for DomainError
impl Ord for DomainError
Source§fn cmp(&self, other: &DomainError) -> Ordering
fn cmp(&self, other: &DomainError) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for DomainError
impl PartialEq for DomainError
Source§impl PartialOrd for DomainError
impl PartialOrd for DomainError
impl Copy for DomainError
impl Eq for DomainError
impl StructuralPartialEq for DomainError
Auto Trait Implementations§
impl Freeze for DomainError
impl RefUnwindSafe for DomainError
impl Send for DomainError
impl Sync for DomainError
impl Unpin for DomainError
impl UnwindSafe for DomainError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)