p

strawman

collection

package collection

Linear Supertypes
LowPriority, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. collection
  2. LowPriority
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type AnyConstr[X] = Any

    Needed to circumvent a difficulty between dotty and scalac concerning the right top type for a type parameter of kind * -> *.

    Needed to circumvent a difficulty between dotty and scalac concerning the right top type for a type parameter of kind * -> *. In Scalac, we can provide Any, as Any is kind-polymorphic. In dotty this is not allowed. In dotty, we can provide [X] => Any. But Scalac does not know lambda syntax.

  2. trait ArrayLike [+A] extends Any

    A trait representing indexable collections with finite length

  3. final class ArrayOps [A] extends AnyVal with IterableOnce[A] with IndexedSeqOps[A, collection.immutable.IndexedSeq, Array[A]] with StrictOptimizedIterableOps[A, Seq, Array[A]] with ArrayLike[A]
  4. case class ArrayView [A](xs: Array[A]) extends IndexedView[A] with Product with Serializable
  5. trait BitSet extends SortedSet[Int] with BitSetOps[BitSet]

    Base type of bitsets

  6. trait BitSetOps [+C <: BitSet with BitSetOps[C]] extends SortedSetOps[Int, SortedSet, C]

    Base implementation type of bitsets

  7. trait BuildFrom [-From, -A, +C] extends Any

    Builds a collection of type C from elements of type A when a source collection of type From is available.

    Builds a collection of type C from elements of type A when a source collection of type From is available. Implicit instances of BuildFrom are available for all collection types.

    From

    Type of source collection

    A

    Type of elements (e.g. Int, Boolean, etc.)

    C

    Type of collection (e.g. List[Int], TreeMap[Int, String], etc.)

  8. trait CanBuild [-A, +C] extends BuildFrom[Any, A, C]

    Builds a collection of type C from elements of type A

    Builds a collection of type C from elements of type A

    A

    Type of elements (e.g. Int, Boolean, etc.)

    C

    Type of collection (e.g. List[Int], TreeMap[Int, String], etc.)

  9. trait IndexedSeq [+A] extends Seq[A] with IndexedSeqOps[A, IndexedSeq, IndexedSeq[A]]

    Base trait for indexed sequences that have efficient apply and length

  10. trait IndexedSeqOps [+A, +CC[X] <: IndexedSeq[X], +C] extends SeqOps[A, CC, C]

    Base trait for indexed Seq operations

  11. trait IndexedView [+A] extends View[A] with ArrayLike[A]

    View defined in terms of indexing a range

  12. trait Iterable [+A] extends IterableOnce[A] with IterableOps[A, Iterable, Iterable[A]]

    Base trait for generic collections

  13. trait IterableFactory [+CC[_]] extends AnyRef

    Base trait for companion objects of unconstrained collection types

  14. trait IterableOnce [+A] extends Any
  15. trait IterableOps [+A, +CC[X], +C] extends Any

    Base trait for Iterable operations

    Base trait for Iterable operations

    VarianceNote

    We require that for all child classes of Iterable the variance of the child class and the variance of the C parameter passed to IterableOps are the same. We cannot express this since we lack variance polymorphism. That's why we have to resort at some places to write C[A @uncheckedVariance].

  16. trait Iterator [+A] extends IterableOnce[A]

    A core Iterator class

  17. trait LinearSeq [+A] extends Seq[A] with LinearSeqOps[A, LinearSeq, LinearSeq[A]]

    Base trait for linearly accessed sequences that have efficient head and tail operations.

    Base trait for linearly accessed sequences that have efficient head and tail operations. Known subclasses: List, LazyList

  18. trait LinearSeqOps [+A, +CC[X] <: LinearSeq[X], +C <: LinearSeq[A]] extends SeqOps[A, CC, C]

    Base trait for linear Seq operations

  19. trait Map [K, +V] extends Iterable[(K, V)] with MapOps[K, V, Map, Map[K, V]]

    Base Map type

  20. trait MapFactory [+CC[X, Y]] extends AnyRef

    Factory methods for collections of kind * −> * -> *

  21. trait MapOps [K, +V, +CC[X, Y] <: Map[X, Y], +C <: Map[K, V]] extends IterableOps[(K, V), Iterable, C] with PartialFunction[K, V] with Equals

    Base Map implementation type

  22. trait Seq [+A] extends Iterable[A] with SeqOps[A, Seq, Seq[A]]

    Base trait for sequence collections

  23. trait SeqOps [+A, +CC[X], +C] extends IterableOps[A, CC, C] with ArrayLike[A] with Equals

    Base trait for Seq operations

  24. trait Set [A] extends Iterable[A] with SetOps[A, Set, Set[A]]

    Base trait for set collections.

  25. trait SetOps [A, +CC[X], +C <: Set[A]] extends IterableOps[A, CC, C] with (A) ⇒ Boolean with Equals

    Base trait for set operations

  26. trait SortedIterableFactory [+CC[_]] extends AnyRef

    Base trait for companion objects of collections that require an implicit evidence

  27. trait SortedMap [K, +V] extends Map[K, V] with SortedMapOps[K, V, SortedMap, SortedMap[K, V]]

    Base type of sorted sets

  28. trait SortedMapFactory [+CC[X, Y]] extends AnyRef

    Factory methods for collections of kind * −> * -> * which require an implicit evidence value for the key type

  29. trait SortedMapOps [K, +V, +CC[X, Y] <: SortedMap[X, Y] with SortedMapOps[X, Y, CC, _], +C <: SortedMap[K, V]] extends MapOps[K, V, Map, C] with SortedOps[K, C]
  30. trait SortedOps [A, +C] extends AnyRef

    Base trait for sorted collections

  31. trait SortedSet [A] extends Set[A] with SortedSetOps[A, SortedSet, SortedSet[A]]

    Base type of sorted sets

  32. trait SortedSetOps [A, +CC[X] <: SortedSet[X], +C <: SortedSet[A]] extends SetOps[A, Set, C] with SortedOps[A, C]
  33. trait SpecificIterableFactory [-A, +C] extends CanBuild[A, C]
  34. trait StrictOptimizedIterableOps [+A, +CC[_], +C] extends IterableOps[A, CC, C]

    Trait that overrides operations to take advantage of strict builders.

    Trait that overrides operations to take advantage of strict builders.

    A

    Elements type

    C

    Collection type

  35. final class StringOps extends AnyVal with IterableOnce[Char] with IndexedSeqOps[Char, collection.immutable.IndexedSeq, String] with StrictOptimizedIterableOps[Char, collection.immutable.IndexedSeq, String] with ArrayLike[Char]
  36. case class StringView (s: String) extends IndexedView[Char] with Product with Serializable
  37. trait View [+A] extends Iterable[A] with IterableOps[A, View, View[A]]

    Concrete collection type: View

  38. implicit final class toNewIterator [A] extends AnyVal
  39. implicit final class toNewSeq [A] extends AnyVal
  40. implicit final class toOldIterator [A] extends AnyVal
  41. implicit final class toOldSeq [A] extends AnyVal

Value Members

  1. implicit def arrayToArrayOps[A](as: Array[A]): ArrayOps[A]

    Decorator to add collection operations to arrays.

  2. implicit def arrayToView[T](xs: Array[T]): ArrayView[T]

    Convert array to iterable via view.

    Convert array to iterable via view. Lower priority than ArrayOps

    Definition Classes
    LowPriority
  3. implicit def optionToIterableOnce[A](maybeA: Option[A]): IterableOnce[A]
  4. implicit def stringToStringOps(s: String): StringOps

    Decorator to add collection operations to strings.

  5. implicit def stringToView(s: String): StringView

    Convert string to iterable via view.

    Convert string to iterable via view. Lower priority than StringOps

    Definition Classes
    LowPriority
  6. object BitSetOps
  7. object Hashing
    Attributes
    protected
  8. object IndexedSeq extends Delegate[IndexedSeq]
  9. object IndexedView
  10. object IterableFactory
  11. object Iterator
  12. object Map extends Delegate[Map]
  13. object MapFactory
  14. object SeqOps
  15. object Set extends Delegate[Set]
  16. object SortedIterableFactory
  17. object SortedMap extends Delegate[SortedMap]
  18. object SortedMapFactory
  19. object SortedSet extends Delegate[SortedSet]
  20. object View extends IterableFactory[View]

    This object reifies operations on views as case classes

Inherited from LowPriority

Inherited from AnyRef

Inherited from Any

Ungrouped