#[non_exhaustive]pub enum ParseErrorKind {
Lex(Error),
Syntax {
span: Span,
message: String,
},
ItemNotFound {
span: Span,
name: String,
kind: String,
hint: Option<String>,
},
TypeCycle {
span: Span,
name: String,
kind: String,
},
}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.
Lex(Error)
Lexer error (invalid character, unterminated comment, etc.)
Syntax
Syntactic or semantic error within a single package (duplicate name, invalid attribute, etc.)
ItemNotFound
A type/interface/world references a name that does not exist within the same package.
TypeCycle
A type/interface/world depends on itself.
Implementations§
Trait Implementations§
Source§impl Debug for ParseErrorKind
impl Debug for ParseErrorKind
Source§impl Display for ParseErrorKind
impl Display for ParseErrorKind
Source§impl From<ParseErrorKind> for ParseError
impl From<ParseErrorKind> for ParseError
Source§fn from(kind: ParseErrorKind) -> Self
fn from(kind: ParseErrorKind) -> Self
Converts to this type from the input type.
Source§impl PartialEq for ParseErrorKind
impl PartialEq for ParseErrorKind
impl Eq for ParseErrorKind
impl StructuralPartialEq for ParseErrorKind
Auto Trait Implementations§
impl Freeze for ParseErrorKind
impl RefUnwindSafe for ParseErrorKind
impl Send for ParseErrorKind
impl Sync for ParseErrorKind
impl Unpin for ParseErrorKind
impl UnsafeUnpin for ParseErrorKind
impl UnwindSafe for ParseErrorKind
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
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.