diff --git a/mug/src/main/java/com/google/mu/util/stream/BiCollectors.java b/mug/src/main/java/com/google/mu/util/stream/BiCollectors.java index 318c829bc..3b17d9761 100644 --- a/mug/src/main/java/com/google/mu/util/stream/BiCollectors.java +++ b/mug/src/main/java/com/google/mu/util/stream/BiCollectors.java @@ -552,6 +552,12 @@ public static BiCollector collectingAndThen( * Returns a {@link BiCollector} that maps the result of {@code collector} using the {@code * finisher} BiFunction. Useful when combined with BiCollectors like {@link #partitioningBy}. * + *

For example:

{@code
+   * collectingAndThen(
+   *     partitioningBy((time, request) -> isAllowed(time, request), toMap(), counting()),
+   *     (allowedRequests, disallowed) -> ...)
+   * }
+ * * @since 8.1 */ public static BiCollector collectingAndThen( diff --git a/mug/src/main/java/com/google/mu/util/stream/MoreCollectors.java b/mug/src/main/java/com/google/mu/util/stream/MoreCollectors.java index 7d0f16924..0b470aa92 100644 --- a/mug/src/main/java/com/google/mu/util/stream/MoreCollectors.java +++ b/mug/src/main/java/com/google/mu/util/stream/MoreCollectors.java @@ -201,6 +201,10 @@ M build() { * Returns a {@link Collector} that maps the result of {@code upstream} collector using the {@code * finisher} BiFunction. Useful when combined with collectors like {@link #partitioningBy}. * + *

For example:

{@code
+   * collectingAndThen(partitioningBy(Person::isGood), (good, evil) -> ...)
+   * }
+ * * @since 8.1 */ public static Collector collectingAndThen(