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.
Produce a new MonoidAggregator 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.
Like flatMap using identity.
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
Preparer is a way to build up an Aggregator through composition using a more natural API: it allows you to start with the input type and describe a series of transformations and aggregations from there, rather than starting from the aggregation and composing "outwards" in both directions.
Uses of Preparer will always start with a call to Preparer[A], and end with a call to monoidAggregate or a related method, to produce an Aggregator instance.