Trait git_pack::cache::DecodeEntry[][src]

pub trait DecodeEntry {
    fn put(
        &mut self,
        pack_id: u32,
        offset: u64,
        data: &[u8],
        kind: Kind,
        compressed_size: usize
    );
fn get(
        &mut self,
        pack_id: u32,
        offset: u64,
        out: &mut Vec<u8>
    ) -> Option<(Kind, usize)>; }
Expand description

A trait to model putting objects at a given pack offset into a cache, and fetching them.

It is used to speed up pack traversals.

Required methods

Store a fully decoded object at offset of kind with compressed_size and data in the cache.

It is up to the cache implementation whether that actually happens or not.

Attempt to fetch the object at offset and store its decoded bytes in out, as previously stored with DecodeEntry::put(), and return its (object kind, decompressed_size)

Implementations on Foreign Types

Implementors