Trait git_odb::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)>;
}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
fn put(
&mut self,
pack_id: u32,
offset: u64,
data: &[u8],
kind: Kind,
compressed_size: usize
)[src]
&mut self,
pack_id: u32,
offset: u64,
data: &[u8],
kind: Kind,
compressed_size: usize
)
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.
fn get(
&mut self,
pack_id: u32,
offset: u64,
out: &mut Vec<u8>
) -> Option<(Kind, usize)>[src]
&mut self,
pack_id: u32,
offset: u64,
out: &mut Vec<u8>
) -> Option<(Kind, usize)>
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)
Implementors
impl DecodeEntry for MemoryCappedHashmap[src]
impl DecodeEntry for MemoryCappedHashmap[src]impl DecodeEntry for Never[src]
impl DecodeEntry for Never[src]