Skip to main content

triplets_core/chunking/
algorithm.rs

1use crate::config::ChunkingStrategy;
2use crate::data::{DataRecord, RecordChunk, RecordSection};
3
4/// Pluggable algorithm for materializing chunks from a record section.
5pub trait ChunkingAlgorithm: Send + Sync {
6    /// Produce candidate chunks for one section of a record.
7    fn materialize(
8        &self,
9        strategy: &ChunkingStrategy,
10        record: &DataRecord,
11        section_idx: usize,
12        section: &RecordSection,
13    ) -> Vec<RecordChunk>;
14}