Prototype improvements for Scala collections.
Add the following dependency to your project:
libraryDependencies += "ch.epfl.scala" %% "collection-strawman" % "0.2.0"
The 0.2.0 version is compatible with Scala 2.13 and Dotty. Scala 2.12 is also supported but you might encounter type inference issues with it.
We also automatically publish snapshots on Sonatype:
resolvers += Resolver.sonatypeRepo("snapshots")
libraryDependencies += "ch.epfl.scala" %% "collection-strawman" % "0.3.0-SNAPSHOT"
See the CONTRIBUTING file.
-
List
-
LazyList
(akaStream
in 2.12) -
Queue
-
Stack
-
ArrayOps
-
StringOps
-
ArrayBuffer
-
ImmutableArray
(new) -
ListBuffer
-
UnrolledBuffer
-
LinkedList
-
DoubleLinkedList
-
Range
/NumericRange
-
Vector
-
HashMap
-
TreeMap
-
IntMap
/LongMap
(?) -
ListMap
-
MultiMap
-
HashSet
-
ListSet
-
TreeSet
-
EqSet
-
BitSet
-
View
-
apply
-
contains
-
containsSlice
-
count
-
endsWith
-
find
-
firstKey
-
forall
/exists
-
foreach
-
foldLeft
-
foldRight
-
get
-
getOrElse
-
getOrElseUpdate
-
head
-
indexOf
/indexWhere
/lastIndexOf
/lastIndexWhere
/indexOfSlice
/lastIndexOfSlice
-
indices
-
isDefinedAt
-
isEmpty
/nonEmpty
-
keysIteratorFrom
-
last
/lastOption
-
lastKey
-
max
/maxBy
-
min
/minBy
-
mkString
-
product
-
reduce
/reduceOption
/reduceLeft
/reduceRight
-
size
-
span
-
startsWith
-
sum
-
to
-
diff
-
drop
/dropRight
/dropWhile
-
empty
-
filter
/filterNot
-
groupBy
-
init
-
intersect
-
partition
-
range
-
rangeImpl
-
sorted
/sortBy
/sortWith
-
slice
-
splitAt
-
substetOf
-
subsets
-
tail
-
take
/takeRight
/takeWhile
-
updated
-
combinations
-
updated
-
prepend
-
append
-
++
/concat
/union
-
flatMap
-
grouped
-
map
-
merged
-
padTo
-
permutations
-
scan
/scanLeft
/scanRight
-
sliding
-
unzip
-
zip
/zipWithIndex
TODO