pub struct DeclarationBlock<'i> {
    pub important_declarations: Vec<Property<'i>>,
    pub declarations: Vec<Property<'i>>,
}
Expand description

A CSS declaration block.

Properties are separated into a list of !important declararations, and a list of normal declarations. This reduces memory usage compared with storing a boolean along with each property.

Fields

important_declarations: Vec<Property<'i>>

A list of !important declarations in the block.

declarations: Vec<Property<'i>>

A list of normal declarations in the block.

Implementations

Parses a declaration block from CSS syntax.

Parses a declaration block from a string.

Returns whether the declaration block is empty.

Returns an iterator over all properties in the declaration.

Returns a mutable iterator over all properties in the declaration.

Returns the value for a given property id based on the properties in this declaration block.

If the property is a shorthand, the result will be a combined value of all of the included longhands, or None if some of the longhands are not declared. Otherwise, the value will be either an explicitly declared longhand, or a value extracted from a shorthand property.

Sets the value and importance for a given property, replacing any existing declarations.

If the property already exists within the declaration block, it is updated in place. Otherwise, a new declaration is appended. When updating a longhand property and a shorthand is defined which includes the longhand, the shorthand will be updated rather than appending a new declaration.

Removes all declarations of the given property id from the declaration block.

When removing a longhand property and a shorthand is defined which includes the longhand, the shorthand will be split apart into its component longhand properties, minus the property to remove. When removing a shorthand, all included longhand properties are also removed.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Serialize self in CSS syntax, writing to dest.

Serialize self in CSS syntax and return a string. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

The archived version of the pointer metadata for this type.

Converts some archived metadata to the pointer metadata for itself.

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Deserializes using the given deserializer

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The alignment of pointer.

The type for initializers.

Initializes a with the given initializer. Read more

Dereferences the given pointer. Read more

Mutably dereferences the given pointer. Read more

Drops the object pointed to by the given pointer. Read more

The type for metadata in pointers and references to Self.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.