#[non_exhaustive]pub enum ParseErrorKind {
EmptySelector,
DanglingCombinator,
EndOfInput,
InvalidPosition,
UnexpectedToken(String),
ExpectedName(String),
UnsupportedPseudo(String),
InvalidAttributeSelector(String),
Other(String),
}Expand description
What is wrong with a selector that is not valid CSS.
This is a translation of the selectors/cssparser error kinds into
wording of this crate’s own, not a re-export of them: their variants
are internal to those crates and several are unreachable from a
selector parse. Anything with no closer match — including a variant a
future version of either crate adds — becomes ParseErrorKind::Other,
so a dependency bump cannot turn into a panic.
Payloads that echo the selector (a token, a pseudo-class name) are
sanitized: control characters are replaced, and the text is elided
past 40 bytes (MAX_TOKEN_ECHO), so a message stays printable
however long the selector is.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
EmptySelector
The selector, or one group of a selector list, has nothing in it.
DanglingCombinator
A combinator with nothing after it, as in div > .
EndOfInput
The selector ends in the middle of a construct.
InvalidPosition
A construct in a position that does not allow it: a
pseudo-element inside :is(), a combinator after one, a :has()
nested in another :has().
UnexpectedToken(String)
A token that cannot appear where it does, as CSS source text.
ExpectedName(String)
A name was required — after . or :: — and something else was
found. Holds the offending token as CSS source text.
UnsupportedPseudo(String)
A pseudo-class or pseudo-element outside the supported set (which is every pseudo-element: XPath 1.0 has no notion of one). Holds the name, without its leading colons.
InvalidAttributeSelector(String)
Something that cannot appear inside [...], as CSS source text:
a malformed attribute name, operator, or value.
Other(String)
A parse failure with no more specific kind here, already worded
as a phrase to be printed after “…selector x: “.
Trait Implementations§
Source§impl Clone for ParseErrorKind
impl Clone for ParseErrorKind
Source§fn clone(&self) -> ParseErrorKind
fn clone(&self) -> ParseErrorKind
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more