pub enum ParseErrorKind {
Show 21 variants
UnexpectedHole,
TypeMismatch {
expected: ValueKind,
actual: ValueKind,
},
MissingField(String),
MissingExtension(String),
UnknownVariant(String),
OutOfRange(String),
InvalidPattern {
kind: String,
reason: String,
},
Nested {
path: String,
source: Box<ParseErrorKind>,
},
InvalidIdentifier(IdentifierError),
UnexpectedTupleLength {
expected: usize,
actual: usize,
},
UnknownField(String),
UnknownExtension(Identifier),
InvalidKeyType(ObjectKey),
NoMatchingVariant {
variant: Option<String>,
},
ConflictingVariantTags {
explicit: String,
repr: String,
},
AmbiguousUnion(Vec<String>),
LiteralMismatch {
expected: String,
actual: String,
},
UnexpectedVariantPath(VariantPath),
InvalidVariantType(ValueKind),
InvalidVariantPath(String),
RecordInExtensionScope,
}Expand description
Error type for parsing failures.
Variants§
UnexpectedHole
Unexpected uninitialized value.
TypeMismatch
Type mismatch between expected and actual value.
MissingField(String)
Required field is missing.
MissingExtension(String)
Required extension is missing.
UnknownVariant(String)
Unknown variant in a union type.
OutOfRange(String)
Value is out of valid range.
InvalidPattern
Invalid value pattern or format.
Used for validation errors in types like regex, URL, UUID, etc.
kind: Type of validation (e.g., “regex”, “url”, “uuid”, “pattern:”) reason: Human-readable error message explaining the failure
Nested
Nested parse error with path context.
InvalidIdentifier(IdentifierError)
Invalid identifier.
UnexpectedTupleLength
Unexpected tuple length.
UnknownField(String)
Unknown field in record.
UnknownExtension(Identifier)
Unknown extension on node.
InvalidKeyType(ObjectKey)
Invalid key type in record (expected string).
NoMatchingVariant
No variant matched in union type.
ConflictingVariantTags
Conflicting variant tags: $variant and repr extracted different variant names.
AmbiguousUnion(Vec<String>)
Multiple variants matched with no priority to resolve.
LiteralMismatch
Literal value mismatch.
UnexpectedVariantPath(VariantPath)
Variant path provided but type is not a union.
InvalidVariantType(ValueKind)
$variant extension has invalid type (not a string).
InvalidVariantPath(String)
$variant extension has invalid path syntax.
RecordInExtensionScope
Tried to parse record fields while in extension flatten scope. This happens when using #[eure(flatten_ext)] with a type that calls parse_record().
Implementations§
Trait Implementations§
Source§impl Clone for ParseErrorKind
impl Clone for ParseErrorKind
Source§fn clone(&self) -> ParseErrorKind
fn clone(&self) -> ParseErrorKind
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more