code: @PublicEvolving
  	public <W extends Window> WindowedStream<T, KEY, W> window(WindowAssigner<? super T, W> assigner) {
  		return new WindowedStream<>(this, assigner);
  	}
docs: Windows this data stream to a {@code WindowedStream}, which evaluates windows
  over a key grouped stream. Elements are put into windows by a {@link WindowAssigner}. The
  grouping of elements is done both by key and by window.
  
  <p>A {@link org.apache.flink.streaming.api.windowing.triggers.Trigger} can be defined to
  specify when windows are evaluated. However, {@code WindowAssigners} have a default
  {@code Trigger} that is used if a {@code Trigger} is not specified.
  
  @param assigner The {@code WindowAssigner} that assigns elements to windows.
  @return The trigger windows data stream.