reactor-core/src/main/java/reactor/core/publisher/Flux.java
public final Flux<Flux<T>> windowWhile(Predicate<T> inclusionPredicate) {
		return windowWhile(inclusionPredicate, Queues.SMALL_BUFFER_SIZE);
	}
public final Flux<Flux<T>> windowWhile(Predicate<T> inclusionPredicate) {
		return windowWhile(inclusionPredicate, Queues.SMALL_BUFFER_SIZE);
	}
Split this {@link Flux} sequence into multiple {@link Flux} windows that stay open
while a given predicate matches the source elements. Once the predicate returns
false, the window closes with an onComplete and the triggering element is discarded.
<p>
Windows are lazily made available downstream at the point where they receive their
first event (an element is pushed, the window completes or errors). Empty windows
can happen when a sequence starts with a separator or contains multiple separators,
but a sequence that finishes with a separator won't cause a remainder empty window
to be emitted.
<p>
<img class="marble" src="doc-files/marbles/windowWhile.svg" alt="">

@reactor.discard This operator discards elements it internally queued for backpressure
upon cancellation or error triggered by a data signal, as well as the triggering element(s) (that doesn't match
the predicate).

@param inclusionPredicate a predicate that triggers the next window when it becomes false.
@return a {@link Flux} of {@link Flux} windows, each containing
subsequent elements that all passed a predicate.