code: @NotNull
      public Stream<T> peek(@NotNull final Consumer<? super T> action) {
          return new Stream<T>(params, new ObjPeek<T>(iterator, action));
      }
docs: Performs provided action on each element.
  
  <p>This is an intermediate operation.
  
  @param action  the action to be performed on each element
  @return the new stream