Enum zip::CompressionMethod
source · #[non_exhaustive]pub enum CompressionMethod {
Stored,
Deflated,
Deflate64,
Bzip2,
Aes,
Zstd,
Lzma,
Xz,
Unsupported(u16),
}Expand description
Identifies the storage format used to compress a file within a ZIP archive.
Each file’s compression method is stored alongside it, allowing the contents to be read without context.
When creating ZIP files, you may choose the method to use with
crate::write::FileOptions::compression_method
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Stored
Store the file as is
Deflated
_deflate-any only.Compress the file using Deflate
Deflate64
deflate64 only.Compress the file using Deflate64. Decoding deflate64 is supported but encoding deflate64 is not supported.
Bzip2
bzip2 only.Compress the file using BZIP2
Aes
aes-crypto only.Encrypted using AES.
The actual compression method has to be taken from the AES extra data field
or from ZipFileData.
Zstd
zstd only.Compress the file using ZStandard
Lzma
lzma only.Compress the file using LZMA
Xz
xz only.Compress the file using XZ
Unsupported(u16)
Unsupported compression method
Implementations§
source§impl CompressionMethod
impl CompressionMethod
All compression methods defined for the ZIP format
pub const STORE: Self = CompressionMethod::Stored
pub const SHRINK: Self = _
pub const REDUCE_1: Self = _
pub const REDUCE_2: Self = _
pub const REDUCE_3: Self = _
pub const REDUCE_4: Self = _
pub const IMPLODE: Self = _
pub const DEFLATE: Self = CompressionMethod::Deflated
_deflate-any only.pub const DEFLATE64: Self = CompressionMethod::Deflate64
deflate64 only.pub const PKWARE_IMPLODE: Self = _
pub const BZIP2: Self = CompressionMethod::Bzip2
bzip2 only.pub const LZMA: Self = CompressionMethod::Lzma
lzma only.pub const IBM_ZOS_CMPSC: Self = _
pub const IBM_TERSE: Self = _
pub const ZSTD_DEPRECATED: Self = _
pub const ZSTD: Self = CompressionMethod::Zstd
zstd only.pub const MP3: Self = _
pub const XZ: Self = CompressionMethod::Xz
xz only.pub const JPEG: Self = _
pub const WAVPACK: Self = _
pub const PPMD: Self = _
pub const AES: Self = CompressionMethod::Aes
aes-crypto only.source§impl CompressionMethod
impl CompressionMethod
sourcepub const fn from_u16(val: u16) -> CompressionMethod
👎Deprecated since 0.5.7: use a constant to construct a compression method
pub const fn from_u16(val: u16) -> CompressionMethod
Converts a u16 to its corresponding CompressionMethod
Trait Implementations§
source§impl Clone for CompressionMethod
impl Clone for CompressionMethod
source§fn clone(&self) -> CompressionMethod
fn clone(&self) -> CompressionMethod
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for CompressionMethod
impl Debug for CompressionMethod
source§impl Default for CompressionMethod
impl Default for CompressionMethod
source§impl Display for CompressionMethod
impl Display for CompressionMethod
source§impl PartialEq for CompressionMethod
impl PartialEq for CompressionMethod
source§fn eq(&self, other: &CompressionMethod) -> bool
fn eq(&self, other: &CompressionMethod) -> bool
self and other values to be equal, and is used
by ==.impl Copy for CompressionMethod
impl Eq for CompressionMethod
impl StructuralPartialEq for CompressionMethod
Auto Trait Implementations§
impl Freeze for CompressionMethod
impl RefUnwindSafe for CompressionMethod
impl Send for CompressionMethod
impl Sync for CompressionMethod
impl Unpin for CompressionMethod
impl UnwindSafe for CompressionMethod
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: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.