Hello, I may have overlook that, but it seems there is no method to see a Collector as a Gatherer.
A Gatherer is more general than a Collector and a Gatherer with a greedy integrator that does not call Downstream.push in the intergator and only once is the finisher is basicaly a Collector. In code: <E, A, T> Gatherer<E, A, T> asGatherer(Collector<? super E, A, ? extends T> collector) { var supplier = collector.supplier(); var accumulator = collector.accumulator(); var combiner = collector.combiner(); var finisher = collector.finisher(); return Gatherer.of(supplier, Gatherer.Integrator.ofGreedy((state, element, _) -> { accumulator.accept(state, element); return true; }), combiner, (state, downstream) -> downstream.push(finisher.apply(state))); } This is eaxctly how Gatherer.fold() works. Is there a reason why such method does not exist ? regards, Rémi