#[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,
) -> Self
👎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, ) -> Self
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,
) -> Self
pub const fn from_static2( display_name: &'static str, media_type_suffixes: &'static str, file_extensions: &'static str, magic_numbers: &'static str, capabilities: ImageFormatCapability, ) -> Self
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<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::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
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§
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<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
§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