pub struct TypeError {
pub span: Option<Span>,
pub message: String,
pub source: Option<UnifyError>,
}Expand description
A type error: a best-effort span (see ast.rs’s module doc comment — only
Var/command/embed nodes carry spans, so most rules fall back to None),
a “while typing …” context message, and — for anything that actually came
from a failed unify call — the UnifyError itself, whose Display
already renders both types involved.
Fields§
§span: Option<Span>§message: String§source: Option<UnifyError>Trait Implementations§
Source§impl Error for TypeError
impl Error for TypeError
Source§fn source<'s>(&self) -> Option<&(dyn Error + 'static)>
fn source<'s>(&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()
Auto Trait Implementations§
impl !RefUnwindSafe for TypeError
impl !Send for TypeError
impl !Sync for TypeError
impl !UnwindSafe for TypeError
impl Freeze for TypeError
impl Unpin for TypeError
impl UnsafeUnpin for TypeError
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more