pub struct StyleRule<'i, R = DefaultAtRule> {
pub selectors: SelectorList<'i>,
pub vendor_prefix: VendorPrefix,
pub declarations: DeclarationBlock<'i>,
pub rules: CssRuleList<'i, R>,
pub loc: Location,
}Expand description
A CSS style rule.
Fields§
§selectors: SelectorList<'i>The selectors for the style rule.
vendor_prefix: VendorPrefixA vendor prefix override, used during selector printing.
declarations: DeclarationBlock<'i>The declarations within the style rule.
rules: CssRuleList<'i, R>Nested rules within the style rule.
loc: LocationThe location of the rule in the source file.
Implementations§
Source§impl<'i, T> StyleRule<'i, T>
impl<'i, T> StyleRule<'i, T>
Sourcepub fn is_compatible(&self, targets: Targets) -> bool
pub fn is_compatible(&self, targets: Targets) -> bool
Returns whether the selectors in the rule are compatible with all of the given browser targets.
Sourcepub fn property_location<'t>(
&self,
code: &'i str,
index: usize,
) -> Result<(Range<SourceLocation>, Range<SourceLocation>), ParseError<'i, ParserError<'i>>>
pub fn property_location<'t>( &self, code: &'i str, index: usize, ) -> Result<(Range<SourceLocation>, Range<SourceLocation>), ParseError<'i, ParserError<'i>>>
Returns the line and column range of the property key and value at the given index in this style rule.
For performance and memory efficiency in non-error cases, source locations are not stored during parsing. Instead, they are computed lazily using the original source string that was used to parse the stylesheet/rule.
Trait Implementations§
Source§impl<'de: 'i, 'i, R> Deserialize<'de> for StyleRule<'i, R>where
R: Deserialize<'de>,
Available on crate feature serde only.
impl<'de: 'i, 'i, R> Deserialize<'de> for StyleRule<'i, R>where
R: Deserialize<'de>,
Available on crate feature
serde only.Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl<'any, 'i, R> IntoOwned<'any> for StyleRule<'i, R>where
R: IntoOwned<'any>,
Available on crate feature into_owned only.
impl<'any, 'i, R> IntoOwned<'any> for StyleRule<'i, R>where
R: IntoOwned<'any>,
Available on crate feature
into_owned only.Source§impl<'i, R: JsonSchema> JsonSchema for StyleRule<'i, R>
Available on crate feature jsonschema only.
impl<'i, R: JsonSchema> JsonSchema for StyleRule<'i, R>
Available on crate feature
jsonschema only.Source§fn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref keyword. Read moreSource§impl<'i, R> Serialize for StyleRule<'i, R>where
R: Serialize,
Available on crate feature serde only.
impl<'i, R> Serialize for StyleRule<'i, R>where
R: Serialize,
Available on crate feature
serde only.impl<'i, R: PartialEq> StructuralPartialEq for StyleRule<'i, R>
Source§impl<'a, 'i, T: ToCss> ToCss for StyleRule<'i, T>
impl<'a, 'i, T: ToCss> ToCss for StyleRule<'i, T>
Source§fn to_css<W>(&self, dest: &mut Printer<'_, '_, W>) -> Result<(), PrinterError>where
W: Write,
fn to_css<W>(&self, dest: &mut Printer<'_, '_, W>) -> Result<(), PrinterError>where
W: Write,
Serialize
self in CSS syntax, writing to dest.Source§fn to_css_string(
&self,
options: PrinterOptions<'_>,
) -> Result<String, PrinterError>
fn to_css_string( &self, options: PrinterOptions<'_>, ) -> Result<String, PrinterError>
Serialize
self in CSS syntax and return a string. Read moreSource§impl<'i, R, __V: ?Sized + Visitor<'i, R>> Visit<'i, R, __V> for StyleRule<'i, R>where
R: Visit<'i, R, __V>,
Available on crate feature visitor only.
impl<'i, R, __V: ?Sized + Visitor<'i, R>> Visit<'i, R, __V> for StyleRule<'i, R>where
R: Visit<'i, R, __V>,
Available on crate feature
visitor only.Source§const CHILD_TYPES: VisitTypes
const CHILD_TYPES: VisitTypes
The types of values contained within this value and its children.
This is used to skip branches that don’t have any values requested
by the Visitor.
Auto Trait Implementations§
impl<'i, R> Freeze for StyleRule<'i, R>where
CssRuleList<'i, R>: Freeze,
impl<'i, R> RefUnwindSafe for StyleRule<'i, R>where
CssRuleList<'i, R>: RefUnwindSafe,
impl<'i, R> Send for StyleRule<'i, R>where
CssRuleList<'i, R>: Send,
impl<'i, R> Sync for StyleRule<'i, R>where
CssRuleList<'i, R>: Sync,
impl<'i, R> Unpin for StyleRule<'i, R>where
CssRuleList<'i, R>: Unpin,
impl<'i, R> UnsafeUnpin for StyleRule<'i, R>where
CssRuleList<'i, R>: UnsafeUnpin,
impl<'i, R> UnwindSafe for StyleRule<'i, R>where
CssRuleList<'i, R>: UnwindSafe,
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.