vavr-io/vavr

(Collection) factory methods

Open

#2,125 opened on Oct 8, 2017

View on GitHub
 (2 comments) (4 reactions) (0 assignees)Java (605 forks)batch import
!BACK-COMPATdesign/refactoring/improvementhelp wanted«vavr-collection»

Repository metrics

Stars
 (5,390 stars)
PR merge metrics
 (Avg merge 2d 17h) (13 merged PRs in 30d)

Description

We have too many methods called of. Because most collections are also functions, I want to simplify that.

  • of(T), of(T...)
  • ofAll(Iterable)
  • ofAll(Iterator) <-- this one might be needed because Iterator (and the upcoming TraversableOnce) will not be Iterable anymore

We need to take a look if ofXyz(Xyz) or fromXyz(Xyz) makes more sense, e.g.

  • fromEntries(j.u.Map.Entry...)
  • fromEntries(Iterable<? extends j.u.Map.Entry>)
  • etc.

Also we will have distinguished factory method names that will not build instances directly from the given method parameters (like of(T...) does for example).

  • Stream.iterate(seed, f)
  • Tree.recurse(seed, f)
  • ...

Contributor guide