strawman.collections.CollectionStrawMan6

IterableLike

Related Doc: package CollectionStrawMan6

trait IterableLike[+A, +C[X] <: Iterable[X]] extends FromIterable[C] with IterableOps[A] with IterableMonoTransforms[A, C[A]] with IterablePolyTransforms[A, C]

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 IterableLike 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].

Linear Supertypes
IterablePolyTransforms[A, C], IterableMonoTransforms[A, C[A @scala.annotation.unchecked.uncheckedVariance]], IterableOps[A], FromIterable[C], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. IterableLike
  2. IterablePolyTransforms
  3. IterableMonoTransforms
  4. IterableOps
  5. FromIterable
  6. AnyRef
  7. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def coll: Iterable[A]

    Attributes
    protected
    Definition Classes
    IterablePolyTransforms
  2. abstract def fromIterable[B](coll: Iterable[B]): C[B]

    Definition Classes
    IterablePolyTransforms

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Definition Classes
    AnyRef → Any
  3. def ++[B >: A](xs: IterableOnce[B]): C[B]

    Concatenation

    Concatenation

    Definition Classes
    IterablePolyTransforms
  4. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  5. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  6. def className: String

    The class name of this collection.

    The class name of this collection. To be used for converting to string. Collections generally print like this:

    <className>(elem_1, ..., elem_n)

    Definition Classes
    IterableOps
  7. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def copyToArray[B >: A](xs: Array[B], start: Int = 0): xs.type

    Copy all elements of this collection to array xs, starting at start.

    Copy all elements of this collection to array xs, starting at start.

    Definition Classes
    IterableOps
  9. def drop(n: Int): C[A]

    The rest of the collection without its n first elements.

    The rest of the collection without its n first elements. For linear, immutable collections this should avoid making a copy.

    Definition Classes
    IterableMonoTransforms
  10. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  12. def filter(p: (A) ⇒ Boolean): C[A]

    All elements satisfying predicate p

    All elements satisfying predicate p

    Definition Classes
    IterableMonoTransforms
  13. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. def flatMap[B](f: (A) ⇒ IterableOnce[B]): C[B]

    Flatmap

    Flatmap

    Definition Classes
    IterablePolyTransforms
  15. def foldLeft[B](z: B)(op: (B, A) ⇒ B): B

    Fold left

    Fold left

    Definition Classes
    IterableOps
  16. def foldRight[B](z: B)(op: (A, B) ⇒ B): B

    Fold right

    Fold right

    Definition Classes
    IterableOps
  17. def foreach(f: (A) ⇒ Unit): Unit

    Apply f to each element for tis side effects

    Apply f to each element for tis side effects

    Definition Classes
    IterableOps
  18. def fromIterableWithSameElemType(coll: Iterable[A]): C[A]

    Create a collection of type C[A] from the elements of coll, which has the same element type as this collection.

    Create a collection of type C[A] from the elements of coll, which has the same element type as this collection. Overridden in StringOps and ArrayOps.

    Attributes
    protected[this]
    Definition Classes
    IterableLikeIterableMonoTransforms
  19. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  20. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  21. def head: A

    The first element of the collection.

    The first element of the collection.

    Definition Classes
    IterableOps
  22. def indexWhere(p: (A) ⇒ Boolean): Int

    The index of the first element in this collection for which p holds.

    The index of the first element in this collection for which p holds.

    Definition Classes
    IterableOps
  23. def isEmpty: Boolean

    Is the collection empty?

    Is the collection empty?

    Definition Classes
    IterableOps
  24. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  25. def knownSize: Int

    The number of elements in this collection, if it can be cheaply computed, -1 otherwise.

    The number of elements in this collection, if it can be cheaply computed, -1 otherwise. Cheaply usually means: Not requiring a collection traversal.

    Definition Classes
    IterableOps
  26. def map[B](f: (A) ⇒ B): C[B]

    Map

    Map

    Definition Classes
    IterablePolyTransforms
  27. def mkString(sep: String): String

    A string showing all elements of this collection, separated by string sep.

    A string showing all elements of this collection, separated by string sep.

    Definition Classes
    IterableOps
  28. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  29. final def notify(): Unit

    Definition Classes
    AnyRef
  30. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  31. def partition(p: (A) ⇒ Boolean): (C[A], C[A])

    A pair of, first, all elements that satisfy prediacte p and, second, all elements that do not.

    A pair of, first, all elements that satisfy prediacte p and, second, all elements that do not. Interesting because it splits a collection in two.

    The default implementation provided here needs to traverse the collection twice. Strict collections have an overridden version of partition in Buildable, which requires only a single traversal.

    Definition Classes
    IterableMonoTransforms
  32. def size: Int

    The number of elements in this collection.

    The number of elements in this collection. Does not terminate for infinite collections.

    Definition Classes
    IterableOps
  33. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  34. def tail: C[A]

    The rest of the collection without its first element.

    The rest of the collection without its first element.

    Definition Classes
    IterableMonoTransforms
  35. def take(n: Int): C[A]

    A collection containing the first n elements of this collection.

    A collection containing the first n elements of this collection.

    Definition Classes
    IterableMonoTransforms
  36. def to[C[X] <: Iterable[X]](fi: FromIterable[C]): C[A]

    Given a collection factory fi for collections of type constructor C, convert this collection to one of type C[A].

    Given a collection factory fi for collections of type constructor C, convert this collection to one of type C[A]. Example uses:

    xs.to(List) xs.to(ArrayBuffer)

    Definition Classes
    IterableOps
  37. def toArray[B >: A](implicit arg0: ClassTag[B]): Array[B]

    Convert collection to array.

    Convert collection to array.

    Definition Classes
    IterableOps
  38. def toString(): String

    Definition Classes
    IterableOps → Any
  39. def view: View[A]

    A view representing the elements of this collection.

    A view representing the elements of this collection.

    Definition Classes
    IterableOps
  40. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  41. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  42. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  43. def zip[B](xs: IterableOnce[B]): C[(A, B)]

    Zip.

    Zip. Interesting because it requires to align to source collections.

    Definition Classes
    IterablePolyTransforms

Inherited from IterablePolyTransforms[A, C]

Inherited from IterableMonoTransforms[A, C[A @scala.annotation.unchecked.uncheckedVariance]]

Inherited from IterableOps[A]

Inherited from FromIterable[C]

Inherited from AnyRef

Inherited from Any

Ungrouped