#[repr(C, u8)]pub enum GenericImage<G, ImageUrl, Color, Percentage, Resolution> {
None,
Url(ImageUrl),
Gradient(Box<G>),
PaintWorklet(Box<PaintWorklet>),
CrossFade(Box<GenericCrossFade<Self, Color, Percentage>>),
ImageSet(Box<GenericImageSet<Self, Resolution>>),
}
Expand description
An <image> | none
value.
https://drafts.csswg.org/css-images/#image-values
Variants§
None
none
variant.
Url(ImageUrl)
A <url()>
image.
Gradient(Box<G>)
A <gradient>
image. Gradients are rather large, and not nearly as
common as urls, so we box them here to keep the size of this enum sane.
PaintWorklet(Box<PaintWorklet>)
A paint worklet image. https://drafts.css-houdini.org/css-paint-api/
CrossFade(Box<GenericCrossFade<Self, Color, Percentage>>)
A <cross-fade()>
image. Storing this directly inside of
GenericImage increases the size by 8 bytes so we box it here
and store images directly inside of cross-fade instead of
boxing them there.
ImageSet(Box<GenericImageSet<Self, Resolution>>)
An image-set()
function.
Implementations§
Source§impl GenericImage<GenericGradient<LineDirection, LengthPercentage, NonNegative<Length>, NonNegative<LengthPercentage>, GenericPosition<PositionComponent<HorizontalPositionKeyword>, PositionComponent<VerticalPositionKeyword>>, Angle, AngleOrPercentage, Color>, CssUrl, Color, Percentage, Resolution>
impl GenericImage<GenericGradient<LineDirection, LengthPercentage, NonNegative<Length>, NonNegative<LengthPercentage>, GenericPosition<PositionComponent<HorizontalPositionKeyword>, PositionComponent<VerticalPositionKeyword>>, Angle, AngleOrPercentage, Color>, CssUrl, Color, Percentage, Resolution>
fn parse_with_cors_mode<'i, 't>( context: &ParserContext<'_>, input: &mut Parser<'i, 't>, cors_mode: CorsMode, flags: ParseImageFlags, ) -> Result<Image, ParseError<'i>>
Source§impl GenericImage<GenericGradient<LineDirection, LengthPercentage, NonNegative<Length>, NonNegative<LengthPercentage>, GenericPosition<PositionComponent<HorizontalPositionKeyword>, PositionComponent<VerticalPositionKeyword>>, Angle, AngleOrPercentage, Color>, CssUrl, Color, Percentage, Resolution>
impl GenericImage<GenericGradient<LineDirection, LengthPercentage, NonNegative<Length>, NonNegative<LengthPercentage>, GenericPosition<PositionComponent<HorizontalPositionKeyword>, PositionComponent<VerticalPositionKeyword>>, Angle, AngleOrPercentage, Color>, CssUrl, Color, Percentage, Resolution>
Sourcepub fn for_cascade(url: Arc<Url>) -> Self
pub fn for_cascade(url: Arc<Url>) -> Self
Creates an already specified image value from an already resolved URL for insertion in the cascade.
Sourcepub fn parse_with_cors_anonymous<'i, 't>(
context: &ParserContext<'_>,
input: &mut Parser<'i, 't>,
) -> Result<Image, ParseError<'i>>
pub fn parse_with_cors_anonymous<'i, 't>( context: &ParserContext<'_>, input: &mut Parser<'i, 't>, ) -> Result<Image, ParseError<'i>>
Provides an alternate method for parsing that associates the URL with anonymous CORS headers.
Sourcepub fn parse_forbid_none<'i, 't>(
context: &ParserContext<'_>,
input: &mut Parser<'i, 't>,
) -> Result<Image, ParseError<'i>>
pub fn parse_forbid_none<'i, 't>( context: &ParserContext<'_>, input: &mut Parser<'i, 't>, ) -> Result<Image, ParseError<'i>>
Provides an alternate method for parsing, but forbidding none
Sourcepub fn parse_only_url<'i, 't>(
context: &ParserContext<'_>,
input: &mut Parser<'i, 't>,
) -> Result<Image, ParseError<'i>>
pub fn parse_only_url<'i, 't>( context: &ParserContext<'_>, input: &mut Parser<'i, 't>, ) -> Result<Image, ParseError<'i>>
Provides an alternate method for parsing, but only for urls.
Trait Implementations§
Source§impl<G: Clone, ImageUrl: Clone, Color: Clone, Percentage: Clone, Resolution: Clone> Clone for GenericImage<G, ImageUrl, Color, Percentage, Resolution>
impl<G: Clone, ImageUrl: Clone, Color: Clone, Percentage: Clone, Resolution: Clone> Clone for GenericImage<G, ImageUrl, Color, Percentage, Resolution>
Source§fn clone(&self) -> GenericImage<G, ImageUrl, Color, Percentage, Resolution>
fn clone(&self) -> GenericImage<G, ImageUrl, Color, Percentage, Resolution>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl<G, ImageUrl, Color, Percentage, Resolution> MallocSizeOf for GenericImage<G, ImageUrl, Color, Percentage, Resolution>where
G: MallocSizeOf,
ImageUrl: MallocSizeOf,
Color: MallocSizeOf,
Percentage: MallocSizeOf,
Resolution: MallocSizeOf,
impl<G, ImageUrl, Color, Percentage, Resolution> MallocSizeOf for GenericImage<G, ImageUrl, Color, Percentage, Resolution>where
G: MallocSizeOf,
ImageUrl: MallocSizeOf,
Color: MallocSizeOf,
Percentage: MallocSizeOf,
Resolution: MallocSizeOf,
Source§fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
Source§impl<G: PartialEq, ImageUrl: PartialEq, Color: PartialEq, Percentage: PartialEq, Resolution: PartialEq> PartialEq for GenericImage<G, ImageUrl, Color, Percentage, Resolution>
impl<G: PartialEq, ImageUrl: PartialEq, Color: PartialEq, Percentage: PartialEq, Resolution: PartialEq> PartialEq for GenericImage<G, ImageUrl, Color, Percentage, Resolution>
Source§fn eq(
&self,
other: &GenericImage<G, ImageUrl, Color, Percentage, Resolution>,
) -> bool
fn eq( &self, other: &GenericImage<G, ImageUrl, Color, Percentage, Resolution>, ) -> bool
self
and other
values to be equal, and is used by ==
.Source§impl<G, ImageUrl, Color, Percentage, Resolution> SpecifiedValueInfo for GenericImage<G, ImageUrl, Color, Percentage, Resolution>where
G: SpecifiedValueInfo,
ImageUrl: SpecifiedValueInfo,
Color: SpecifiedValueInfo,
Percentage: SpecifiedValueInfo,
Resolution: SpecifiedValueInfo,
impl<G, ImageUrl, Color, Percentage, Resolution> SpecifiedValueInfo for GenericImage<G, ImageUrl, Color, Percentage, Resolution>where
G: SpecifiedValueInfo,
ImageUrl: SpecifiedValueInfo,
Color: SpecifiedValueInfo,
Percentage: SpecifiedValueInfo,
Resolution: SpecifiedValueInfo,
Source§const SUPPORTED_TYPES: u8
const SUPPORTED_TYPES: u8
Source§impl<G, ImageUrl, Color, Percentage, Resolution> ToComputedValue for GenericImage<G, ImageUrl, Color, Percentage, Resolution>where
G: ToComputedValue,
ImageUrl: ToComputedValue,
Color: ToComputedValue,
Percentage: ToComputedValue,
Resolution: ToComputedValue,
Box<GenericImageSet<Self, Resolution>>: ToComputedValue<ComputedValue = Box<GenericImageSet<GenericImage<<G as ToComputedValue>::ComputedValue, <ImageUrl as ToComputedValue>::ComputedValue, <Color as ToComputedValue>::ComputedValue, <Percentage as ToComputedValue>::ComputedValue, <Resolution as ToComputedValue>::ComputedValue>, <Resolution as ToComputedValue>::ComputedValue>>>,
impl<G, ImageUrl, Color, Percentage, Resolution> ToComputedValue for GenericImage<G, ImageUrl, Color, Percentage, Resolution>where
G: ToComputedValue,
ImageUrl: ToComputedValue,
Color: ToComputedValue,
Percentage: ToComputedValue,
Resolution: ToComputedValue,
Box<GenericImageSet<Self, Resolution>>: ToComputedValue<ComputedValue = Box<GenericImageSet<GenericImage<<G as ToComputedValue>::ComputedValue, <ImageUrl as ToComputedValue>::ComputedValue, <Color as ToComputedValue>::ComputedValue, <Percentage as ToComputedValue>::ComputedValue, <Resolution as ToComputedValue>::ComputedValue>, <Resolution as ToComputedValue>::ComputedValue>>>,
Source§type ComputedValue = GenericImage<<G as ToComputedValue>::ComputedValue, <ImageUrl as ToComputedValue>::ComputedValue, <Color as ToComputedValue>::ComputedValue, <Percentage as ToComputedValue>::ComputedValue, <Resolution as ToComputedValue>::ComputedValue>
type ComputedValue = GenericImage<<G as ToComputedValue>::ComputedValue, <ImageUrl as ToComputedValue>::ComputedValue, <Color as ToComputedValue>::ComputedValue, <Percentage as ToComputedValue>::ComputedValue, <Resolution as ToComputedValue>::ComputedValue>
Source§fn from_computed_value(from: &Self::ComputedValue) -> Self
fn from_computed_value(from: &Self::ComputedValue) -> Self
Source§fn to_computed_value(&self, context: &Context<'_>) -> Self::ComputedValue
fn to_computed_value(&self, context: &Context<'_>) -> Self::ComputedValue
Context
.Source§impl<G, ImageUrl, Color, Percentage, Resolution> ToResolvedValue for GenericImage<G, ImageUrl, Color, Percentage, Resolution>where
G: ToResolvedValue,
ImageUrl: ToResolvedValue,
Color: ToResolvedValue,
Percentage: ToResolvedValue,
Resolution: ToResolvedValue,
impl<G, ImageUrl, Color, Percentage, Resolution> ToResolvedValue for GenericImage<G, ImageUrl, Color, Percentage, Resolution>where
G: ToResolvedValue,
ImageUrl: ToResolvedValue,
Color: ToResolvedValue,
Percentage: ToResolvedValue,
Resolution: ToResolvedValue,
Source§type ResolvedValue = GenericImage<<G as ToResolvedValue>::ResolvedValue, <ImageUrl as ToResolvedValue>::ResolvedValue, <Color as ToResolvedValue>::ResolvedValue, <Percentage as ToResolvedValue>::ResolvedValue, <Resolution as ToResolvedValue>::ResolvedValue>
type ResolvedValue = GenericImage<<G as ToResolvedValue>::ResolvedValue, <ImageUrl as ToResolvedValue>::ResolvedValue, <Color as ToResolvedValue>::ResolvedValue, <Percentage as ToResolvedValue>::ResolvedValue, <Resolution as ToResolvedValue>::ResolvedValue>
Source§fn from_resolved_value(from: Self::ResolvedValue) -> Self
fn from_resolved_value(from: Self::ResolvedValue) -> Self
Source§fn to_resolved_value(self, context: &Context<'_>) -> Self::ResolvedValue
fn to_resolved_value(self, context: &Context<'_>) -> Self::ResolvedValue
Source§impl<G, ImageUrl, Color, Percentage, Resolution> ToShmem for GenericImage<G, ImageUrl, Color, Percentage, Resolution>
impl<G, ImageUrl, Color, Percentage, Resolution> ToShmem for GenericImage<G, ImageUrl, Color, Percentage, Resolution>
impl<G, ImageUrl, Color, Percentage, Resolution> StructuralPartialEq for GenericImage<G, ImageUrl, Color, Percentage, Resolution>
Auto Trait Implementations§
impl<G, ImageUrl, Color, Percentage, Resolution> Freeze for GenericImage<G, ImageUrl, Color, Percentage, Resolution>where
ImageUrl: Freeze,
impl<G, ImageUrl, Color, Percentage, Resolution> RefUnwindSafe for GenericImage<G, ImageUrl, Color, Percentage, Resolution>where
ImageUrl: RefUnwindSafe,
G: RefUnwindSafe,
Resolution: RefUnwindSafe,
Percentage: RefUnwindSafe,
Color: RefUnwindSafe,
impl<G, ImageUrl, Color, Percentage, Resolution> Send for GenericImage<G, ImageUrl, Color, Percentage, Resolution>
impl<G, ImageUrl, Color, Percentage, Resolution> Sync for GenericImage<G, ImageUrl, Color, Percentage, Resolution>
impl<G, ImageUrl, Color, Percentage, Resolution> Unpin for GenericImage<G, ImageUrl, Color, Percentage, Resolution>where
ImageUrl: Unpin,
impl<G, ImageUrl, Color, Percentage, Resolution> UnwindSafe for GenericImage<G, ImageUrl, Color, Percentage, Resolution>where
ImageUrl: UnwindSafe + RefUnwindSafe,
G: UnwindSafe + RefUnwindSafe,
Resolution: RefUnwindSafe + UnwindSafe,
Percentage: RefUnwindSafe + UnwindSafe,
Color: RefUnwindSafe + 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
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>
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>
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