code: @NotNull
      public Stream<T> takeUntilIndexed(@NotNull IndexedPredicate<? super T> stopPredicate) {
          return takeUntilIndexed(0, 1, stopPredicate);
      }
docs: Takes elements while the {@code IndexedPredicate} returns {@code false}.
  Once predicate condition is satisfied by an element, the stream
  finishes with this element.
  
  <p>This is an intermediate operation.
  
  <p>Example:
  <pre>
  stopPredicate: (index, value) -&gt; (index + value) &gt; 4
  stream: [1, 2, 3, 4, 0, 1, 2]
  index:  [0, 1, 2, 3, 4, 5, 6]
  sum:    [1, 3, 5, 7, 4, 6, 8]
  result: [1, 2, 3]
  </pre>
  
  @param stopPredicate  the {@code IndexedPredicate} used to take elements
  @return the new stream
  @since 1.1.6