#[non_exhaustive]pub struct ImageFormat {
pub display_name: Txt,
pub media_type_suffixes: Txt,
pub file_extensions: Txt,
pub magic_numbers: Txt,
pub capabilities: ImageFormatCapability,
}Expand description
Represents an image codec capability.
This type will be used in the next breaking release of the view API.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.display_name: TxtDisplay name of the format.
media_type_suffixes: TxtMedia types (MIME) associated with the format.
Lowercase, without "image/" prefix, comma separated if there is more than one.
file_extensions: TxtCommon file extensions associated with the format.
Lowercase, without dot, comma separated if there is more than one.
magic_numbers: TxtIdentifier file prefixes.
Lower case ASCII hexadecimals, comma separated if there is more than one, "xx" matches any byte.
capabilities: ImageFormatCapabilityCapabilities of this format.
Implementations§
Source§impl ImageFormat
impl ImageFormat
Sourcepub const fn from_static(
display_name: &'static str,
media_type_suffixes: &'static str,
file_extensions: &'static str,
capabilities: ImageFormatCapability,
) -> ImageFormat
👎Deprecated: use from_static2, it will replace this function next breaking release
pub const fn from_static( display_name: &'static str, media_type_suffixes: &'static str, file_extensions: &'static str, capabilities: ImageFormatCapability, ) -> ImageFormat
from_static2, it will replace this function next breaking releaseSourcepub const fn from_static2(
display_name: &'static str,
media_type_suffixes: &'static str,
file_extensions: &'static str,
magic_numbers: &'static str,
capabilities: ImageFormatCapability,
) -> ImageFormat
pub const fn from_static2( display_name: &'static str, media_type_suffixes: &'static str, file_extensions: &'static str, magic_numbers: &'static str, capabilities: ImageFormatCapability, ) -> ImageFormat
Sourcepub fn media_type_suffixes_iter(&self) -> impl Iterator<Item = &str>
pub fn media_type_suffixes_iter(&self) -> impl Iterator<Item = &str>
Iterate over media type suffixes.
Sourcepub fn media_types(&self) -> impl Iterator<Item = Txt>
pub fn media_types(&self) -> impl Iterator<Item = Txt>
Iterate over full media types, with "image/" prefix.
Sourcepub fn file_extensions_iter(&self) -> impl Iterator<Item = &str>
pub fn file_extensions_iter(&self) -> impl Iterator<Item = &str>
Iterate over extensions.
Sourcepub fn matches(&self, f: &str) -> bool
pub fn matches(&self, f: &str) -> bool
Checks if f matches any of the mime types or any of the file extensions.
File extensions comparison ignores dot and ASCII case.
Sourcepub fn matches_magic(&self, file_prefix: &[u8]) -> bool
pub fn matches_magic(&self, file_prefix: &[u8]) -> bool
Check if file_prefix matches any magic numbers.
A good size for file_prefix is 24 bytes, it should cover all image formats.
Trait Implementations§
Source§impl Clone for ImageFormat
impl Clone for ImageFormat
Source§fn clone(&self) -> ImageFormat
fn clone(&self) -> ImageFormat
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ImageFormat
impl Debug for ImageFormat
Source§impl<'de> Deserialize<'de> for ImageFormat
impl<'de> Deserialize<'de> for ImageFormat
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<ImageFormat, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<ImageFormat, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Hash for ImageFormat
impl Hash for ImageFormat
Source§impl PartialEq for ImageFormat
impl PartialEq for ImageFormat
Source§impl Serialize for ImageFormat
impl Serialize for ImageFormat
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Eq for ImageFormat
impl StructuralPartialEq for ImageFormat
Auto Trait Implementations§
impl Freeze for ImageFormat
impl RefUnwindSafe for ImageFormat
impl Send for ImageFormat
impl Sync for ImageFormat
impl Unpin for ImageFormat
impl UnwindSafe for ImageFormat
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
Source§impl<T> AnyVarValue for T
impl<T> AnyVarValue for T
Source§fn clone_boxed(&self) -> BoxAnyVarValue
fn clone_boxed(&self) -> BoxAnyVarValue
Source§fn eq_any(&self, other: &(dyn AnyVarValue + 'static)) -> bool
fn eq_any(&self, other: &(dyn AnyVarValue + 'static)) -> bool
self and other are equal.Source§fn try_swap(&mut self, other: &mut (dyn AnyVarValue + 'static)) -> bool
fn try_swap(&mut self, other: &mut (dyn AnyVarValue + 'static)) -> bool
other if both are of the same type.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,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> FsChangeNote for T
impl<T> FsChangeNote for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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