pub struct CompressionPipeline { /* private fields */ }Expand description
Compression pipeline for optimizing memory storage
Implementations§
Source§impl CompressionPipeline
impl CompressionPipeline
pub fn new() -> Self
Sourcepub fn compress(&self, memory: &Memory) -> Result<Memory>
pub fn compress(&self, memory: &Memory) -> Result<Memory>
Compress a memory based on its characteristics
Sourcepub fn decompress(&self, memory: &Memory) -> Result<Memory>
pub fn decompress(&self, memory: &Memory) -> Result<Memory>
Decompress a memory
§Returns
Ok(Memory)- Decompressed memory with original content restoredErr- If decompression fails or compression is lossy (semantic)
§Errors
- Returns error for semantic compression (lossy - original data not recoverable)
- Returns error if compressed data is missing or corrupted
Sourcepub fn is_lossless(&self, memory: &Memory) -> bool
pub fn is_lossless(&self, memory: &Memory) -> bool
Check if a memory’s compression is lossless (can be fully decompressed)
Sourcepub fn get_strategy<'a>(&self, memory: &'a Memory) -> Option<&'a str>
pub fn get_strategy<'a>(&self, memory: &'a Memory) -> Option<&'a str>
Get the compression strategy used for a memory
Trait Implementations§
Auto Trait Implementations§
impl Freeze for CompressionPipeline
impl RefUnwindSafe for CompressionPipeline
impl Send for CompressionPipeline
impl Sync for CompressionPipeline
impl Unpin for CompressionPipeline
impl UnsafeUnpin for CompressionPipeline
impl UnwindSafe for CompressionPipeline
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
Mutably borrows from an owned value. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
Converts
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>
Converts
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