code: public PythonSingleOutputStreamOperator apply(
  		WindowFunction<PyObject, Object, Object, W> fun) throws IOException {
  		return new PythonSingleOutputStreamOperator(stream.apply(new PythonApplyFunction<>(fun)));
  	}
docs: A thin wrapper layer over {@link WindowedStream#apply(WindowFunction)}.
  
  @param fun The window function.
  @return The data stream that is the result of applying the window function to the window.