pub struct ParseError;Expand description
Error returned by <NHSNumber as FromStr>::from_str for any string
that is not one of the two accepted shapes (see spec.md §5).
ParseError is a unit struct — every error value compares equal:
use nhs_number::NHSNumber;
use nhs_number::parse_error::ParseError;
use std::str::FromStr;
let a = NHSNumber::from_str("not even close").unwrap_err();
let b = NHSNumber::from_str("wrong length").unwrap_err();
assert_eq!(a, b);
assert_eq!(a, ParseError);To map it to your own richer error type:
use nhs_number::NHSNumber;
use std::str::FromStr;
#[derive(Debug, PartialEq)]
enum MyError {
BadNhsNumber(String),
}
let bad = "not a number";
let result: Result<NHSNumber, MyError> =
NHSNumber::from_str(bad).map_err(|_| MyError::BadNhsNumber(bad.into()));
assert_eq!(result, Err(MyError::BadNhsNumber("not a number".into())));Trait Implementations§
Source§impl Debug for ParseError
impl Debug for ParseError
impl Eq for ParseError
Source§impl PartialEq for ParseError
impl PartialEq for ParseError
Source§fn eq(&self, other: &ParseError) -> bool
fn eq(&self, other: &ParseError) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for ParseError
Auto Trait Implementations§
impl Freeze for ParseError
impl RefUnwindSafe for ParseError
impl Send for ParseError
impl Sync for ParseError
impl Unpin for ParseError
impl UnsafeUnpin for ParseError
impl UnwindSafe for ParseError
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