#[repr(u8)]pub enum ColorComponent<ValueType> {
None,
Value(ValueType),
ChannelKeyword(ChannelKeyword),
Calc(Box<CalcNode>),
AlphaOmitted,
}Expand description
A single color component.
Variants§
None
The “none” keyword.
Value(ValueType)
A absolute value.
ChannelKeyword(ChannelKeyword)
A channel keyword, e.g. r, l, alpha, etc.
Calc(Box<CalcNode>)
A calc() value.
AlphaOmitted
Used when alpha components are not specified.
Implementations§
Source§impl<ValueType> ColorComponent<ValueType>
impl<ValueType> ColorComponent<ValueType>
Source§impl<ValueType: ColorComponentType> ColorComponent<ValueType>
impl<ValueType: ColorComponentType> ColorComponent<ValueType>
Sourcepub fn parse<'i, 't>(
context: &ParserContext<'_>,
input: &mut Parser<'i, 't>,
allow_none: bool,
allowed_channel_keywords: ChannelKeyword,
) -> Result<Self, ParseError<'i>>
pub fn parse<'i, 't>( context: &ParserContext<'_>, input: &mut Parser<'i, 't>, allow_none: bool, allowed_channel_keywords: ChannelKeyword, ) -> Result<Self, ParseError<'i>>
Parse a single ColorComponent.
Sourcepub fn to_computed_value(
&self,
context: Option<&Context<'_>>,
origin_color: Option<&AbsoluteColor>,
) -> Self
pub fn to_computed_value( &self, context: Option<&Context<'_>>, origin_color: Option<&AbsoluteColor>, ) -> Self
Compute the component’s value against context, substituting color
channel references with the matching channel of origin_color when it is
provided (and already converted into this function’s color space).
If no (absolute) origin color is available, channel references are kept intact, so the component can still be resolved later at use-value time.
Trait Implementations§
Source§impl<ValueType: Clone> Clone for ColorComponent<ValueType>
impl<ValueType: Clone> Clone for ColorComponent<ValueType>
Source§fn clone(&self) -> ColorComponent<ValueType>
fn clone(&self) -> ColorComponent<ValueType>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<ValueType: Debug> Debug for ColorComponent<ValueType>
impl<ValueType: Debug> Debug for ColorComponent<ValueType>
Source§impl From<ColorComponent<f32>> for ComponentDetails
impl From<ColorComponent<f32>> for ComponentDetails
Source§fn from(value: ColorComponent<f32>) -> Self
fn from(value: ColorComponent<f32>) -> Self
Converts to this type from the input type.
Source§impl<ValueType> MallocSizeOf for ColorComponent<ValueType>where
ValueType: MallocSizeOf,
impl<ValueType> MallocSizeOf for ColorComponent<ValueType>where
ValueType: MallocSizeOf,
Source§fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
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<ValueType: PartialEq> PartialEq for ColorComponent<ValueType>
impl<ValueType: PartialEq> PartialEq for ColorComponent<ValueType>
impl<ValueType: PartialEq> StructuralPartialEq for ColorComponent<ValueType>
Source§impl<ValueType> ToAnimatedValue for ColorComponent<ValueType>
impl<ValueType> ToAnimatedValue for ColorComponent<ValueType>
Source§type AnimatedValue = ColorComponent<ValueType>
type AnimatedValue = ColorComponent<ValueType>
The type of the animated value.
Source§fn to_animated_value(self, _context: &Context<'_>) -> Self::AnimatedValue
fn to_animated_value(self, _context: &Context<'_>) -> Self::AnimatedValue
Converts this value to an animated value.
Source§fn from_animated_value(animated: Self::AnimatedValue) -> Self
fn from_animated_value(animated: Self::AnimatedValue) -> Self
Converts back an animated value into a computed value.
Source§impl<ValueType: ToCss> ToCss for ColorComponent<ValueType>
impl<ValueType: ToCss> ToCss for ColorComponent<ValueType>
Source§fn to_css<W>(&self, dest: &mut CssWriter<'_, W>) -> Resultwhere
W: Write,
fn to_css<W>(&self, dest: &mut CssWriter<'_, W>) -> Resultwhere
W: Write,
Serialize
self in CSS syntax, writing to dest.Source§fn to_css_string(&self) -> String
fn to_css_string(&self) -> String
Serialize
self in CSS syntax and return a string. Read moreSource§fn to_css_cssstring(&self) -> String
fn to_css_cssstring(&self) -> String
Serialize
self in CSS syntax and return a CssString. Read moreAuto Trait Implementations§
impl<ValueType> Freeze for ColorComponent<ValueType>where
ValueType: Freeze,
impl<ValueType> RefUnwindSafe for ColorComponent<ValueType>where
ValueType: RefUnwindSafe,
impl<ValueType> Send for ColorComponent<ValueType>where
ValueType: Send,
impl<ValueType> Sync for ColorComponent<ValueType>where
ValueType: Sync,
impl<ValueType> Unpin for ColorComponent<ValueType>where
ValueType: Unpin,
impl<ValueType> UnsafeUnpin for ColorComponent<ValueType>where
ValueType: UnsafeUnpin,
impl<ValueType> UnwindSafe for ColorComponent<ValueType>where
ValueType: UnwindSafe,
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,
impl<T> ErasedDestructor for Twhere
T: 'static,
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