Enum style::values::specified::color::Color

source ·
pub enum Color {
    CurrentColor,
    Absolute(Box<Absolute>),
    ColorFunction(Box<ColorFunction<Self>>),
    ColorMix(Box<ColorMix>),
    LightDark(Box<LightDark>),
}
Expand description

Specified color value

Variants§

§

CurrentColor

The ‘currentColor’ keyword

§

Absolute(Box<Absolute>)

An absolute color. https://w3c.github.io/csswg-drafts/css-color-4/#typedef-absolute-color-function

§

ColorFunction(Box<ColorFunction<Self>>)

A color function that could not be resolved to a Color::Absolute color at parse time. Right now this is only the case for relative colors with currentColor as the origin.

§

ColorMix(Box<ColorMix>)

A color mix.

§

LightDark(Box<LightDark>)

A light-dark() color.

Implementations§

source§

impl Color

source

fn parse_internal<'i, 't>( context: &ParserContext<'_>, input: &mut Parser<'i, 't>, preserve_authored: PreserveAuthored, ) -> Result<Self, ParseError<'i>>

source

pub fn is_valid(context: &ParserContext<'_>, input: &mut Parser<'_, '_>) -> bool

Returns whether a given color is valid for authors.

source

pub fn parse_and_compute( context: &ParserContext<'_>, input: &mut Parser<'_, '_>, device: Option<&Device>, ) -> Option<ComputedColor>

Tries to parse a color and compute it with a given device.

source§

impl Color

source

pub fn honored_in_forced_colors_mode(&self, allow_transparent: bool) -> bool

Returns whether this color is allowed in forced-colors mode.

source

pub fn currentcolor() -> Self

Returns currentcolor value.

source

pub fn transparent() -> Self

Returns transparent value.

source

pub fn from_absolute_color(color: AbsoluteColor) -> Self

Create a color from an AbsoluteColor.

source

pub fn resolve_to_absolute(&self) -> Option<AbsoluteColor>

Resolve this Color into an AbsoluteColor if it does not use any of the forms that are invalid in an absolute color. https://drafts.csswg.org/css-color-5/#absolute-color Returns None if the specified color is not valid as an absolute color.

source

pub fn parse_quirky<'i, 't>( context: &ParserContext<'_>, input: &mut Parser<'i, 't>, allow_quirks: AllowQuirks, ) -> Result<Self, ParseError<'i>>

source

fn parse_hash<'i>( bytes: &[u8], loc: &SourceLocation, ) -> Result<Self, ParseError<'i>>

source

fn parse_quirky_color<'i, 't>( input: &mut Parser<'i, 't>, ) -> Result<Self, ParseError<'i>>

source§

impl Color

source

pub fn to_computed_color( &self, context: Option<&Context<'_>>, ) -> Option<ComputedColor>

Converts this Color into a ComputedColor.

If context is None, and the specified color requires data from the context to resolve, then None is returned.

source§

impl Color

Trait Implementations§

source§

impl Clone for Color

source§

fn clone(&self) -> Color

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Color

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<AbsoluteColor> for Color

source§

fn from(value: AbsoluteColor) -> Self

Converts to this type from the input type.
source§

impl MallocSizeOf for Color

source§

fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize

Measure the heap usage of all descendant heap-allocated structures, but not the space taken up by the value itself.
source§

impl Parse for Color

source§

fn parse<'i, 't>( context: &ParserContext<'_>, input: &mut Parser<'i, 't>, ) -> Result<Self, ParseError<'i>>

Parse a value of this type. Read more
source§

impl PartialEq for Color

source§

fn eq(&self, other: &Color) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl SpecifiedValueInfo for Color

source§

const SUPPORTED_TYPES: u8 = 1u8

Supported CssTypes by the given value type. Read more
source§

fn collect_completion_keywords(f: KeywordsCollectFn<'_>)

Collect value starting words for the given specified value type. This includes keyword and function names which can appear at the beginning of a value of this type. Read more
source§

impl ToComputedValue for Color

source§

type ComputedValue = GenericColor<Percentage>

The computed value type we’re going to be converted to.
source§

fn to_computed_value(&self, context: &Context<'_>) -> ComputedColor

Convert a specified value to a computed value, using itself and the data inside the Context.
source§

fn from_computed_value(computed: &ComputedColor) -> Self

Convert a computed value to specified value form. Read more
source§

impl ToCss for Color

source§

fn to_css<W>(&self, dest: &mut CssWriter<'_, W>) -> Result
where W: Write,

Serialize self in CSS syntax, writing to dest.
source§

fn to_css_string(&self) -> String

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

impl ToShmem for Color

source§

fn to_shmem(&self, builder: &mut SharedMemoryBuilder) -> Result<Self>

Clones this value into a form suitable for writing into a SharedMemoryBuilder. Read more
source§

impl StructuralPartialEq for Color

Auto Trait Implementations§

§

impl Freeze for Color

§

impl RefUnwindSafe for Color

§

impl Send for Color

§

impl Sync for Color

§

impl Unpin for Color

§

impl UnwindSafe for Color

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

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

source§

impl<T> IntoEither for T

source§

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 more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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 more
source§

impl<T> MaybeBoxed<Box<T>> for T

source§

fn maybe_boxed(self) -> Box<T>

Convert
source§

impl<T> MaybeBoxed<T> for T

source§

fn maybe_boxed(self) -> T

Convert
source§

impl<T> Pointable for T

source§

const ALIGN: usize = _

The alignment of pointer.
source§

type Init = T

The type for initializers.
source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
source§

unsafe fn drop(ptr: usize)

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

impl<T> ToOwned for T
where T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> ErasedDestructor for T
where T: 'static,

source§

impl<T> MaybeSendSync for T