pub trait StreamError<Item, Range>: Sized + PartialEq {
Show 18 methods
// Required methods
fn unexpected_token(token: Item) -> Self;
fn unexpected_range(token: Range) -> Self;
fn unexpected_message<T>(msg: T) -> Self
where T: Display;
fn expected_token(token: Item) -> Self;
fn expected_range(token: Range) -> Self;
fn expected_message<T>(msg: T) -> Self
where T: Display;
fn message_token(token: Item) -> Self;
fn message_range(token: Range) -> Self;
fn message_message<T>(msg: T) -> Self
where T: Display;
fn into_other<T>(self) -> T
where T: StreamError<Item, Range>;
// Provided methods
fn unexpected(info: Info<Item, Range>) -> Self { ... }
fn unexpected_static_message(msg: &'static str) -> Self { ... }
fn expected(info: Info<Item, Range>) -> Self { ... }
fn expected_static_message(msg: &'static str) -> Self { ... }
fn message_static_message(msg: &'static str) -> Self { ... }
fn message(info: Info<Item, Range>) -> Self { ... }
fn other<E>(err: E) -> Self
where E: StdError + Send + Sync + 'static { ... }
fn end_of_input() -> Self { ... }
}
Expand description
StreamError
represents a single error returned from a Stream
or a Parser
.
Usually multiple instances of StreamError
is composed into a ParseError
to build the final
error value.
Required Methods§
fn unexpected_token(token: Item) -> Self
fn unexpected_range(token: Range) -> Self
fn unexpected_message<T>(msg: T) -> Selfwhere
T: Display,
fn expected_token(token: Item) -> Self
fn expected_range(token: Range) -> Self
fn expected_message<T>(msg: T) -> Selfwhere
T: Display,
fn message_token(token: Item) -> Self
fn message_range(token: Range) -> Self
fn message_message<T>(msg: T) -> Selfwhere
T: Display,
Sourcefn into_other<T>(self) -> Twhere
T: StreamError<Item, Range>,
fn into_other<T>(self) -> Twhere
T: StreamError<Item, Range>,
Converts self
into a different StreamError
type.
This should aim to preserve as much information as possible into the returned T
value but
if Self
ignores some information passed to it using one of the constructors that
information is naturally lost.
Provided Methods§
fn unexpected(info: Info<Item, Range>) -> Self
fn unexpected_static_message(msg: &'static str) -> Self
fn expected(info: Info<Item, Range>) -> Self
fn expected_static_message(msg: &'static str) -> Self
fn message_static_message(msg: &'static str) -> Self
fn message(info: Info<Item, Range>) -> Self
fn other<E>(err: E) -> Self
fn end_of_input() -> Self
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.