code: public final Flux<Flux<T>> windowWhile(Predicate<T> inclusionPredicate) {
  		return windowWhile(inclusionPredicate, Queues.SMALL_BUFFER_SIZE);
  	}
docs: 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.