code: public final Ix<T> doOnNext(IxConsumer<? super T> action) {
          return new IxDoOn<T>(this, nullCheck(action, "action is null"), IxEmptyAction.instance0());
      }
docs: Calls the given action just before when the consumer calls next() of this Ix.iterator().
  <p>
  The result's iterator() forwards calls to remove() to this Iterator.
  @param action the action to call for each item
  @return the new Ix instance
  @throws NullPointerException if action is null
  @since 1.0