Module collector

Module collector 

Source
Expand description

Collectors for grouping and aggregating entities.

Collectors aggregate entities within groups during group_by() operations. They maintain incremental state for O(1) insert/retract operations.

§Example

use solverforge_scoring::stream::collector::{count, sum};

// Count collector for counting entities in a group
let counter = count::<i32>();

// Sum collector for summing a property
let summer = sum(|x: &i32| *x as i64);

Structs§

CountAccumulator
Accumulator for counting entities.
CountCollector
A collector that counts entities.
LoadBalance
Result of load balancing - tracks loads per item and computes unfairness.
LoadBalanceAccumulator
Accumulator for load balance with incremental variance computation.
LoadBalanceCollector
Collector for computing load balance unfairness.
SumAccumulator
Zero-erasure accumulator for summing values.
SumCollector
Zero-erasure collector that sums values extracted from entities.

Traits§

Accumulator
An accumulator that incrementally collects values.
UniCollector
A collector that aggregates entities of type A into a result of type R.

Functions§

count
Creates a collector that counts entities.
load_balance
Creates a load balance collector.
sum
Creates a zero-erasure collector that sums values extracted from entities.