pub trait AdaptiveChunking<A: Clone + Copy + 'static + Send + Sync> {
// Required methods
fn adaptive_chunking(
&self,
params: AdaptiveChunkingParams,
) -> CoreResult<AdaptiveChunkingResult>;
fn process_chunks_adaptive<F, R>(
&self,
params: AdaptiveChunkingParams,
f: F,
) -> CoreResult<Vec<R>>
where F: Fn(&[A], usize) -> R;
fn process_chunks_mut_adaptive<F>(
&mut self,
params: AdaptiveChunkingParams,
f: F,
) -> CoreResult<()>
where F: Fn(&mut [A], usize);
fn process_chunks_parallel_adaptive<F, R>(
&self,
params: AdaptiveChunkingParams,
f: F,
) -> CoreResult<Vec<R>>
where F: Fn(&[A], usize) -> R + Send + Sync,
R: Send,
A: Send + Sync;
}Expand description
Trait for adaptive chunking capabilities.
Required Methods§
Sourcefn adaptive_chunking(
&self,
params: AdaptiveChunkingParams,
) -> CoreResult<AdaptiveChunkingResult>
fn adaptive_chunking( &self, params: AdaptiveChunkingParams, ) -> CoreResult<AdaptiveChunkingResult>
Sourcefn process_chunks_adaptive<F, R>(
&self,
params: AdaptiveChunkingParams,
f: F,
) -> CoreResult<Vec<R>>
fn process_chunks_adaptive<F, R>( &self, params: AdaptiveChunkingParams, f: F, ) -> CoreResult<Vec<R>>
Sourcefn process_chunks_mut_adaptive<F>(
&mut self,
params: AdaptiveChunkingParams,
f: F,
) -> CoreResult<()>
fn process_chunks_mut_adaptive<F>( &mut self, params: AdaptiveChunkingParams, f: F, ) -> CoreResult<()>
Process chunks mutably using an automatically determined optimal chunking strategy.
§Arguments
params- Parameters to guide the adaptive chunking processf- Function to process each chunk
Sourcefn process_chunks_parallel_adaptive<F, R>(
&self,
params: AdaptiveChunkingParams,
f: F,
) -> CoreResult<Vec<R>>
fn process_chunks_parallel_adaptive<F, R>( &self, params: AdaptiveChunkingParams, f: F, ) -> CoreResult<Vec<R>>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.