#[non_exhaustive]pub enum ParseError {
Empty,
TooLong,
InvalidLetter,
}Expand description
The reason a string could not be parsed as a SIN token.
Returned by the parsing entry points (crate::Identifier::parse,
core::str::FromStr, TryFrom) and by crate::Letter::try_from_char.
This enum is #[non_exhaustive]: future revisions may add variants without
a breaking change, so downstream match expressions should include a
wildcard arm.
§Examples
use sashite_sin::{Identifier, ParseError};
assert_eq!("".parse::<Identifier>(), Err(ParseError::Empty));
assert_eq!("CC".parse::<Identifier>(), Err(ParseError::TooLong));
assert_eq!("1".parse::<Identifier>(), Err(ParseError::InvalidLetter));Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Empty
The input was empty.
TooLong
The input was longer than the single character a token occupies.
InvalidLetter
The input was not a single ASCII letter.
Trait Implementations§
Source§impl Clone for ParseError
impl Clone for ParseError
Source§fn clone(&self) -> ParseError
fn clone(&self) -> ParseError
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for ParseError
Source§impl Debug for ParseError
impl Debug for ParseError
Source§impl Display for ParseError
impl Display for ParseError
impl Eq for ParseError
Source§impl Error for ParseError
impl Error for ParseError
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 Hash for ParseError
impl Hash 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