code: @NotNull
      public static <T> Stream<T> of(@NotNull final T... elements) {
          Objects.requireNonNull(elements);
          if (elements.length == 0) {
              return Stream.<T>empty();
          }
          return new Stream<T>(new ObjArray<T>(elements));
      }
docs: Creates a {@code Stream} from the specified values.
  
  @param <T> the type of the stream elements
  @param elements  the elements to be passed to stream
  @return the new stream
  @throws NullPointerException if {@code elements} is null