parallel_processor/buckets/readers/
mod.rs

1use crate::buckets::bucket_writer::BucketItemSerializer;
2use std::path::PathBuf;
3
4pub mod async_binary_reader;
5pub mod compressed_binary_reader;
6pub mod generic_binary_reader;
7pub mod lock_free_binary_reader;
8pub mod unbuffered_compressed_binary_reader;
9
10pub trait BucketReader {
11    fn decode_all_bucket_items<
12        S: BucketItemSerializer,
13        F: for<'a> FnMut(S::ReadType<'a>, &mut S::ExtraDataBuffer),
14    >(
15        self,
16        buffer: S::ReadBuffer,
17        extra_buffer: &mut S::ExtraDataBuffer,
18        func: F,
19        deserializer_init_data: S::InitData,
20    );
21
22    fn get_name(&self) -> PathBuf;
23}