Struct style::stylesheets::rule_parser::NestedRuleParser
source · #[repr(transparent)]struct NestedRuleParser<'a, 'i>(TopLevelRuleParser<'a, 'i>);
Tuple Fields§
§0: TopLevelRuleParser<'a, 'i>
Implementations§
source§impl<'a, 'i> NestedRuleParser<'a, 'i>
impl<'a, 'i> NestedRuleParser<'a, 'i>
fn parse_relative(&self) -> ParseRelative
fn at_rule_allowed(&self, prelude: &AtRulePrelude) -> bool
fn nest_for_rule<R>( &mut self, rule_type: CssRuleType, cb: impl FnOnce(&mut Self) -> R, ) -> R
fn parse_nested_rules( &mut self, input: &mut Parser<'i, '_>, rule_type: CssRuleType, source_location: SourceLocation, ) -> Arc<Locked<CssRules>>
fn parse_nested( &mut self, input: &mut Parser<'i, '_>, rule_type: CssRuleType, wants_first_declaration_block: bool, source_location: SourceLocation, ) -> NestedParseResult
fn handle_error_reporting_selectors_pre( &mut self, start: &ParserState, selectors: &SelectorList<SelectorImpl>, )
fn handle_error_reporting_selectors_post(&mut self)
fn flush_declarations(&mut self, source_location: SourceLocation)
Methods from Deref<Target = TopLevelRuleParser<'a, 'i>>§
fn nested(&mut self) -> &mut NestedRuleParser<'a, 'i>
sourcepub fn can_parse_declarations(&self) -> bool
pub fn can_parse_declarations(&self) -> bool
If we’re in a nested state, this returns whether declarations can be parsed. See RuleBodyItemParser::parse_declarations().
fn in_style_rule(&self) -> bool
fn in_page_rule(&self) -> bool
fn in_style_or_page_rule(&self) -> bool
sourcefn check_state(&mut self, new_state: State) -> bool
fn check_state(&mut self, new_state: State) -> bool
Checks whether we can parse a rule that would transition us to
new_state
.
This is usually a simple branch, but we may need more bookkeeping if
doing insertRule
from CSSOM.
Trait Implementations§
source§impl<'a, 'i> AtRuleParser<'i> for NestedRuleParser<'a, 'i>
impl<'a, 'i> AtRuleParser<'i> for NestedRuleParser<'a, 'i>
§type Prelude = AtRulePrelude
type Prelude = AtRulePrelude
The intermediate representation of prelude of an at-rule.
§type Error = StyleParseErrorKind<'i>
type Error = StyleParseErrorKind<'i>
The error type that is included in the ParseError value that can be returned.
source§fn parse_prelude<'t>(
&mut self,
name: CowRcStr<'i>,
input: &mut Parser<'i, 't>,
) -> Result<Self::Prelude, ParseError<'i>>
fn parse_prelude<'t>( &mut self, name: CowRcStr<'i>, input: &mut Parser<'i, 't>, ) -> Result<Self::Prelude, ParseError<'i>>
Parse the prelude of an at-rule with the given
name
. Read moresource§fn parse_block<'t>(
&mut self,
prelude: AtRulePrelude,
start: &ParserState,
input: &mut Parser<'i, 't>,
) -> Result<(), ParseError<'i>>
fn parse_block<'t>( &mut self, prelude: AtRulePrelude, start: &ParserState, input: &mut Parser<'i, 't>, ) -> Result<(), ParseError<'i>>
Parse the content of a
{ /* ... */ }
block for the body of the at-rule. Read moresource§fn rule_without_block(
&mut self,
prelude: AtRulePrelude,
start: &ParserState,
) -> Result<(), ()>
fn rule_without_block( &mut self, prelude: AtRulePrelude, start: &ParserState, ) -> Result<(), ()>
End an at-rule which doesn’t have block. Return the finished
representation of the at-rule. Read more
source§impl<'a, 'i> DeclarationParser<'i> for NestedRuleParser<'a, 'i>
impl<'a, 'i> DeclarationParser<'i> for NestedRuleParser<'a, 'i>
§type Declaration = ()
type Declaration = ()
The finished representation of a declaration.
§type Error = StyleParseErrorKind<'i>
type Error = StyleParseErrorKind<'i>
The error type that is included in the ParseError value that can be returned.
source§fn parse_value<'t>(
&mut self,
name: CowRcStr<'i>,
input: &mut Parser<'i, 't>,
) -> Result<(), ParseError<'i>>
fn parse_value<'t>( &mut self, name: CowRcStr<'i>, input: &mut Parser<'i, 't>, ) -> Result<(), ParseError<'i>>
Parse the value of a declaration with the given
name
. Read moresource§impl<'a, 'i> DerefMut for NestedRuleParser<'a, 'i>
impl<'a, 'i> DerefMut for NestedRuleParser<'a, 'i>
source§impl<'a, 'i> QualifiedRuleParser<'i> for NestedRuleParser<'a, 'i>
impl<'a, 'i> QualifiedRuleParser<'i> for NestedRuleParser<'a, 'i>
§type Prelude = SelectorList<SelectorImpl>
type Prelude = SelectorList<SelectorImpl>
The intermediate representation of a qualified rule prelude.
§type QualifiedRule = ()
type QualifiedRule = ()
The finished representation of a qualified rule.
§type Error = StyleParseErrorKind<'i>
type Error = StyleParseErrorKind<'i>
The error type that is included in the ParseError value that can be returned.
source§fn parse_prelude<'t>(
&mut self,
input: &mut Parser<'i, 't>,
) -> Result<Self::Prelude, ParseError<'i>>
fn parse_prelude<'t>( &mut self, input: &mut Parser<'i, 't>, ) -> Result<Self::Prelude, ParseError<'i>>
Parse the prelude of a qualified rule. For style rules, this is as Selector list. Read more
source§fn parse_block<'t>(
&mut self,
selectors: Self::Prelude,
start: &ParserState,
input: &mut Parser<'i, 't>,
) -> Result<(), ParseError<'i>>
fn parse_block<'t>( &mut self, selectors: Self::Prelude, start: &ParserState, input: &mut Parser<'i, 't>, ) -> Result<(), ParseError<'i>>
Parse the content of a
{ /* ... */ }
block for the body of the qualified rule. Read moresource§impl<'a, 'i> RuleBodyItemParser<'i, (), StyleParseErrorKind<'i>> for NestedRuleParser<'a, 'i>
impl<'a, 'i> RuleBodyItemParser<'i, (), StyleParseErrorKind<'i>> for NestedRuleParser<'a, 'i>
source§fn parse_declarations(&self) -> bool
fn parse_declarations(&self) -> bool
If nesting is disabled, we can’t get there for a non-style-rule. If it’s enabled, we parse raw declarations there.
source§fn parse_qualified(&self) -> bool
fn parse_qualified(&self) -> bool
Whether we should attempt to parse qualified rules. If you know you won’t, returning false
would be slightly faster.
Auto Trait Implementations§
impl<'a, 'i> Freeze for NestedRuleParser<'a, 'i>
impl<'a, 'i> !RefUnwindSafe for NestedRuleParser<'a, 'i>
impl<'a, 'i> !Send for NestedRuleParser<'a, 'i>
impl<'a, 'i> !Sync for NestedRuleParser<'a, 'i>
impl<'a, 'i> Unpin for NestedRuleParser<'a, 'i>
impl<'a, 'i> !UnwindSafe for NestedRuleParser<'a, 'i>
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<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 moresource§impl<T> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert