pub trait AggregatorFactory: Send + Sync {
// Required methods
fn create_collector(&self, reader: &SegmentReader) -> Box<dyn Aggregator>;
fn merge_results(
&self,
results: Vec<AggregationResult>,
) -> AggregationResult;
}Expand description
Creates per-segment aggregation collectors and merges their results.
Required Methods§
Sourcefn create_collector(&self, reader: &SegmentReader) -> Box<dyn Aggregator>
fn create_collector(&self, reader: &SegmentReader) -> Box<dyn Aggregator>
Create a collector for a specific segment.
Sourcefn merge_results(&self, results: Vec<AggregationResult>) -> AggregationResult
fn merge_results(&self, results: Vec<AggregationResult>) -> AggregationResult
Merge results from multiple segments.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".