#[non_exhaustive]pub enum CompressionMode {
Off,
Lz4,
}Expand description
Phase 3 (issue #8): per-pager compression knob. Selects whether
newly-created files use the transparent LZ4 page-compression
layer (format_minor = 1, feature_flags bit 0 set) or stay at
the original uncompressed format_minor = 0 layout.
No-op against existing files: when a pager opens an already-initialised database, the file’s own header dictates whether compression is in use; this knob only affects file creation.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Off
Default — newly-created files use format_minor = 0 with
the full 32-bit CRC32C per-page trailer (no compression).
Lz4
Newly-created files use format_minor = 1 with LZ4 page
compression. Requires the compression Cargo feature on
obj-core / obj-db. A build WITHOUT that feature refuses
to open any format_minor >= 1 file with
Error::FormatFeatureUnsupported.
Trait Implementations§
Source§impl Clone for CompressionMode
impl Clone for CompressionMode
Source§fn clone(&self) -> CompressionMode
fn clone(&self) -> CompressionMode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CompressionMode
impl Debug for CompressionMode
Source§impl Default for CompressionMode
impl Default for CompressionMode
Source§fn default() -> CompressionMode
fn default() -> CompressionMode
Source§impl<'de> Deserialize<'de> for CompressionMode
impl<'de> Deserialize<'de> for CompressionMode
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<CompressionMode, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<CompressionMode, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for CompressionMode
impl PartialEq for CompressionMode
Source§fn eq(&self, other: &CompressionMode) -> bool
fn eq(&self, other: &CompressionMode) -> bool
self and other values to be equal, and is used by ==.