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]