Skip to main content

CompactionFilter

Trait CompactionFilter 

Source
pub trait CompactionFilter: Send {
    // Required method
    fn filter_item(
        &mut self,
        item: ItemAccessor<'_>,
        ctx: &Context,
    ) -> Result<Verdict>;

    // Provided method
    fn finish(self: Box<Self>) { ... }
}
Expand description

Trait to implement custom compaction filters

Required Methods§

Source

fn filter_item( &mut self, item: ItemAccessor<'_>, ctx: &Context, ) -> Result<Verdict>

Returns whether an item should be kept during compaction.

§Panicking

This function should NOT panic.

§Errors

Returning an error will abort the running compaction. This should only be done when strictly necessary, such as when fetching a value fails.

Provided Methods§

Source

fn finish(self: Box<Self>)

Called when compaction is finished.

§Panicking

This function should NOT panic.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§