Produce a new Aggregator which includes the Preparer's transformation chain in its prepare stage.
count and following methods all just call monoidAggregate with one of the standard Aggregators.
count and following methods all just call monoidAggregate with one of the standard Aggregators. see the Aggregator object for more docs.
Filter out values that do not meet the predicate.
Filter out values that do not meet the predicate. Like flatMap, this limits future aggregations to MonoidAggregator.
Produce a new Preparer that chains this one-to-many transformation.
Produce a new Preparer that chains this one-to-many transformation. Because "many" could include "none", this limits future aggregations to those done using monoids.
Like flatMap using identity.
Like flatMap using identity.
head and following methods all just call aggregate with one of the standard Aggregators.
head and following methods all just call aggregate with one of the standard Aggregators. see the Aggregator object for more docs.
headOption and following methods are all just calling lift with standard Aggregators see the Aggregator object for more docs
headOption and following methods are all just calling lift with standard Aggregators see the Aggregator object for more docs
transform a given Aggregator into a MonoidAggregator by lifting the reduce and present stages into Option space
transform a given Aggregator into a MonoidAggregator by lifting the reduce and present stages into Option space
Produce a new MonoidAggregator which includes the Preparer's transformation chain in its prepare stage.
Produce a new MonoidAggregator which includes the Preparer's transformation chain in its prepare stage.
Split the processing into two parallel aggregations.
Split the processing into two parallel aggregations. You provide a function which produces two different aggregators from this preparer, and it will return a single aggregator which does both aggregations in parallel. (See also Aggregator's join method.)
We really need to generate N versions of this for 3-way, 4-way etc splits.
A Preparer that has had zero or more map transformations applied, but no flatMaps. This can produce any type of Aggregator.