pub struct Cache {
pub data_file: Arc<Mutex<BufReader<File>>>,
pub indices: HashMap<u8, CacheIndex>,
}
Expand description
The Cache struct is the top-level representation of the cache itself, all data within the cache is accessed via this struct.
The Cache is provided pre-wrapped in a Arc<Mutex>
.
The idiomatic way to construct a Cache struct is with a util::CacheBuilder
.
Once the Cache is creating using its [Cache::with(builder)
] method,
all archives and file containers will be populated, though
none of the data will be read for individual files.
For a recommended method of retrieving raw file data from the cache, see util::FileProvider
.
For tips on implementing a full-blown Definition Provider, see util::DefProvider
.
Fields§
§data_file: Arc<Mutex<BufReader<File>>>
§indices: HashMap<u8, CacheIndex>
Implementations§
Source§impl Cache
impl Cache
pub fn with(builder: CacheBuilder) -> Option<Self>
pub fn index(&mut self, idx: usize) -> Option<&'_ mut CacheIndex>
pub fn clear_raw_data(&mut self)
Auto Trait Implementations§
impl Freeze for Cache
impl RefUnwindSafe for Cache
impl Send for Cache
impl Sync for Cache
impl Unpin for Cache
impl UnwindSafe for Cache
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more