pub struct ParseError {
pub kind: ParseErrorKind,
pub location: Option<OffsetSpan>,
pub context: Vec<ContextFrame>,
/* private fields */
}Expand description
Structured failure returned by core parsing and structural accessors.
Fields§
§kind: ParseErrorKindMachine-inspectable error category.
location: Option<OffsetSpan>Optional byte location.
context: Vec<ContextFrame>Context ordered from the innermost operation outward.
Implementations§
Source§impl ParseError
impl ParseError
Sourcepub fn new(kind: ParseErrorKind, message: impl Into<String>) -> Self
pub fn new(kind: ParseErrorKind, message: impl Into<String>) -> Self
Construct a parser error with a typed category and human context.
Sourcepub fn bounds(offset: u64, needed: u64, available: u64) -> Self
pub fn bounds(offset: u64, needed: u64, available: u64) -> Self
Construct an out-of-bounds error with the attempted range.
Sourcepub fn unsupported(message: impl Into<String>) -> Self
pub fn unsupported(message: impl Into<String>) -> Self
Construct an unsupported-input error.
Sourcepub fn validation(message: impl Into<String>) -> Self
pub fn validation(message: impl Into<String>) -> Self
Construct a strict-validation error.
Sourcepub fn with_location(self, location: OffsetSpan) -> Self
pub fn with_location(self, location: OffsetSpan) -> Self
Attach a byte location.
Sourcepub fn with_context(self, frame: ContextFrame) -> Self
pub fn with_context(self, frame: ContextFrame) -> Self
Add an outer context frame without flattening the original error.
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 moreSource§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 PartialEq for ParseError
impl PartialEq for ParseError
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