code: @NotNull
      public static <T> Stream<T> generate(@NotNull final Supplier<T> supplier) {
          Objects.requireNonNull(supplier);
          return new Stream<T>(new ObjGenerate<T>(supplier));
      }
docs: Creates a {@code Stream} by elements that generated by {@code Supplier}.
  
  @param <T> the type of the stream elements
  @param supplier  the {@code Supplier} of generated elements
  @return the new stream
  @throws NullPointerException if {@code supplier} is null