#[non_exhaustive]pub struct ConvertColorOptions {
pub(crate) transform: Option<CicpTransform>,
pub(crate) _auto_traits: PhantomData<Rc<()>>,
}Expand description
Inputs to ImageBuffer::copy_from_color_space.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.transform: Option<CicpTransform>A pre-calculated transform. This is only used when the actual colors of the input and output image match the color spaces with which the was constructed.
FIXME: Clarify that the transform is cheap to clone, i.e. internally an Arc of precomputed
tables and not expensive despite having Clone.
_auto_traits: PhantomData<Rc<()>>Make sure we can later add options that are bound to the thread. That does not mean that
all attributes will be bound to the thread, only that we can add !Sync options later. You
should be constructing the options at the call site with each attribute being cheap to move
into here.
Implementations§
Source§impl ConvertColorOptions
impl ConvertColorOptions
pub(crate) fn as_transform( &mut self, from_color: Cicp, into_color: Cicp, ) -> Result<&CicpTransform, ImageError>
pub(crate) fn as_transform_fn<FromType, IntoType>(
&mut self,
from_color: Cicp,
into_color: Cicp,
) -> Result<&(dyn Fn(&[FromType::Subpixel], &mut [FromType::Subpixel]) + Send + Sync + '_), ImageError>where
FromType: PixelWithColorType,
IntoType: PixelWithColorType,
Trait Implementations§
Source§impl Default for ConvertColorOptions
impl Default for ConvertColorOptions
Source§fn default() -> ConvertColorOptions
fn default() -> ConvertColorOptions
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for ConvertColorOptions
impl !RefUnwindSafe for ConvertColorOptions
impl !Send for ConvertColorOptions
impl !Sync for ConvertColorOptions
impl Unpin for ConvertColorOptions
impl UnsafeUnpin for ConvertColorOptions
impl !UnwindSafe for ConvertColorOptions
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> 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 more