pub enum CssRule {
Show 21 variants
Style(Arc<Locked<StyleRule>>),
Namespace(Arc<NamespaceRule>),
Import(Arc<Locked<ImportRule>>),
Media(Arc<MediaRule>),
Container(Arc<ContainerRule>),
FontFace(Arc<Locked<FontFaceRule>>),
FontFeatureValues(Arc<FontFeatureValuesRule>),
FontPaletteValues(Arc<FontPaletteValuesRule>),
CounterStyle(Arc<Locked<CounterStyleRule>>),
Keyframes(Arc<Locked<KeyframesRule>>),
Margin(Arc<MarginRule>),
Supports(Arc<SupportsRule>),
Page(Arc<Locked<PageRule>>),
Property(Arc<PropertyRule>),
Document(Arc<DocumentRule>),
LayerBlock(Arc<LayerBlockRule>),
LayerStatement(Arc<LayerStatementRule>),
Scope(Arc<ScopeRule>),
StartingStyle(Arc<StartingStyleRule>),
PositionTry(Arc<Locked<PositionTryRule>>),
NestedDeclarations(Arc<Locked<NestedDeclarationsRule>>),
}Expand description
A CSS rule.
TODO(emilio): Lots of spec links should be around.
Variants§
Style(Arc<Locked<StyleRule>>)
Namespace(Arc<NamespaceRule>)
Import(Arc<Locked<ImportRule>>)
Media(Arc<MediaRule>)
Container(Arc<ContainerRule>)
FontFace(Arc<Locked<FontFaceRule>>)
FontFeatureValues(Arc<FontFeatureValuesRule>)
FontPaletteValues(Arc<FontPaletteValuesRule>)
CounterStyle(Arc<Locked<CounterStyleRule>>)
Keyframes(Arc<Locked<KeyframesRule>>)
Margin(Arc<MarginRule>)
Supports(Arc<SupportsRule>)
Page(Arc<Locked<PageRule>>)
Property(Arc<PropertyRule>)
Document(Arc<DocumentRule>)
LayerBlock(Arc<LayerBlockRule>)
LayerStatement(Arc<LayerStatementRule>)
Scope(Arc<ScopeRule>)
StartingStyle(Arc<StartingStyleRule>)
PositionTry(Arc<Locked<PositionTryRule>>)
NestedDeclarations(Arc<Locked<NestedDeclarationsRule>>)
Implementations§
Source§impl CssRule
impl CssRule
fn is_empty_nested_declarations( &self, guard: &SharedRwLockReadGuard<'_>, ) -> bool
Source§impl CssRule
impl CssRule
Sourcepub fn rule_type(&self) -> CssRuleType
pub fn rule_type(&self) -> CssRuleType
Returns the CSSOM rule type of this rule.
Sourcepub fn parse(
css: &str,
insert_rule_context: InsertRuleContext<'_>,
parent_stylesheet_contents: &StylesheetContents,
shared_lock: &SharedRwLock,
loader: Option<&dyn StylesheetLoader>,
allow_import_rules: AllowImportRules,
) -> Result<Self, RulesMutateError>
pub fn parse( css: &str, insert_rule_context: InsertRuleContext<'_>, parent_stylesheet_contents: &StylesheetContents, shared_lock: &SharedRwLock, loader: Option<&dyn StylesheetLoader>, allow_import_rules: AllowImportRules, ) -> Result<Self, RulesMutateError>
Parse a CSS rule.
This mostly implements steps 3..7 of https://drafts.csswg.org/cssom/#insert-a-css-rule
Trait Implementations§
Source§impl DeepCloneWithLock for CssRule
impl DeepCloneWithLock for CssRule
Source§fn deep_clone_with_lock(
&self,
lock: &SharedRwLock,
guard: &SharedRwLockReadGuard<'_>,
) -> CssRule
fn deep_clone_with_lock( &self, lock: &SharedRwLock, guard: &SharedRwLockReadGuard<'_>, ) -> CssRule
Deep clones this CssRule.
Source§impl ToCssWithGuard for CssRule
impl ToCssWithGuard for CssRule
Source§fn to_css(
&self,
guard: &SharedRwLockReadGuard<'_>,
dest: &mut CssStringWriter,
) -> Result
fn to_css( &self, guard: &SharedRwLockReadGuard<'_>, dest: &mut CssStringWriter, ) -> Result
Serialize
self in CSS syntax, writing to dest, using the given lock guard.Source§fn to_css_string(&self, guard: &SharedRwLockReadGuard<'_>) -> CssString
fn to_css_string(&self, guard: &SharedRwLockReadGuard<'_>) -> CssString
Serialize
self in CSS syntax using the given lock guard and return a string. Read moreAuto Trait Implementations§
impl Freeze for CssRule
impl !RefUnwindSafe for CssRule
impl Send for CssRule
impl Sync for CssRule
impl Unpin for CssRule
impl !UnwindSafe for CssRule
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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