Trait SSTable

Source
pub trait SSTable: Sized {
    type Value: Clone;
    type ValueReader: ValueReader<Value = Self::Value>;
    type ValueWriter: ValueWriter<Value = Self::Value>;

    // Provided methods
    fn delta_writer<W: Write>(write: W) -> DeltaWriter<W, Self::ValueWriter> { ... }
    fn writer<W: Write>(wrt: W) -> Writer<W, Self::ValueWriter> { ... }
    fn delta_reader(reader: OwnedBytes) -> DeltaReader<Self::ValueReader> { ... }
    fn reader(reader: OwnedBytes) -> Reader<Self::ValueReader> { ... }
    fn create_empty_reader() -> Reader<Self::ValueReader> { ... }
    fn merge<W: Write, M: ValueMerger<Self::Value>>(
        io_readers: Vec<OwnedBytes>,
        w: W,
        merger: M,
    ) -> Result<()> { ... }
}
Expand description

SSTable makes it possible to read and write sstables with typed values.

Required Associated Types§

Provided Methods§

Source

fn delta_writer<W: Write>(write: W) -> DeltaWriter<W, Self::ValueWriter>

Source

fn writer<W: Write>(wrt: W) -> Writer<W, Self::ValueWriter>

Source

fn delta_reader(reader: OwnedBytes) -> DeltaReader<Self::ValueReader>

Source

fn reader(reader: OwnedBytes) -> Reader<Self::ValueReader>

Source

fn create_empty_reader() -> Reader<Self::ValueReader>

Returns an empty static reader.

Source

fn merge<W: Write, M: ValueMerger<Self::Value>>( io_readers: Vec<OwnedBytes>, w: W, merger: M, ) -> Result<()>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§