Enum bevy_retrograde::core::image::flat::Error [−]
pub enum Error { TooLarge, NormalFormRequired(NormalForm), WrongColor(ColorType), }
Expand description
Denotes invalid flat sample buffers when trying to convert to stricter types.
The biggest use case being ImageBuffer
which expects closely packed
samples in a row major matrix representation. But this error type may be
resused for other import functions. A more versatile user may also try to
correct the underlying representation depending on the error variant.
Variants
The represented image was too large.
The optional value denotes a possibly accepted maximal bound.
NormalFormRequired(NormalForm)
The represented image can not use this representation.
Has an additional value of the normalized form that would be accepted.
WrongColor(ColorType)
The color format did not match the channel count.
In some cases you might be able to fix this by lowering the reported pixel count of the buffer without touching the strides.
In very special circumstances you may do the opposite. This is VERY dangerous but not
directly memory unsafe although that will likely alias pixels. One scenario is when you
want to construct an Rgba
image but have only 3 bytes per pixel and for some reason don’t
care about the value of the alpha channel even though you need Rgba
.
Trait Implementations
impl From<Error> for ImageError
impl From<Error> for ImageError
pub fn from(error: Error) -> ImageError
pub fn from(error: Error) -> ImageError
Performs the conversion.
impl StructuralEq for Error
impl StructuralPartialEq for Error
Auto Trait Implementations
impl RefUnwindSafe for Error
impl UnwindSafe for Error
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
impl<T> DynHash for T where
T: DynEq + Hash,
impl<T> DynHash for T where
T: DynEq + Hash,
Compare self to key
and return true
if they are equal.
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
pub fn clone_type_data(&self) -> Box<dyn TypeData + 'static, Global>
pub fn vzip(self) -> V