scala.collection

# TraversableLike

#### trait TraversableLike[+A, +Repr] extends HasNewBuilder[A, Repr] with FilterMonadic[A, Repr] with TraversableOnce[A] with GenTraversableLike[A, Repr] with Parallelizable[A, ParIterable[A]]

A template trait for traversable collections of type `Traversable[A]`.

This is a base trait of all kinds of Scala collections. It implements the behavior common to all collections, in terms of a method `foreach` with signature:

    def foreach[U](f: Elem => U): Unit

Collection classes mixing in this trait provide a concrete `foreach` method which traverses all the elements contained in the collection, applying a given function to each. They also need to provide a method `newBuilder` which creates a builder for collections of the same kind.

A traversable class might or might not have two properties: strictness and orderedness. Neither is represented as a type.

The instances of a strict collection class have all their elements computed before they can be used as values. By contrast, instances of a non-strict collection class may defer computation of some of their elements until after the instance is available as a value. A typical example of a non-strict collection class is a scala.collection.immutable.Stream. A more general class of examples are `TraversableViews`.

If a collection is an instance of an ordered collection class, traversing its elements with `foreach` will always visit elements in the same order, even for different runs of the program. If the class is not ordered, `foreach` can visit elements in different orders for different runs (but it will keep the same order in the same run).'

A typical example of a collection class which is not ordered is a `HashMap` of objects. The traversal order for hash maps will depend on the hash codes of its elements, and these hash codes might differ from one run to the next. By contrast, a `LinkedHashMap` is ordered because it's `foreach` method visits elements in the order they were inserted into the `HashMap`.

Self Type
  TraversableLike[A, Repr]
Source
  TraversableLike.scala

Linear Supertypes
GenTraversableLike[A, Repr], Parallelizable[A, ParIterable[A]], TraversableOnce[A], GenTraversableOnce[A], FilterMonadic[A, Repr], HasNewBuilder[A, Repr], Any
Known Subclasses
::, Appended, Appended, Appended, Appended, ArrayBuffer, ArrayLike, ArrayOps, ArraySeq, ArrayStack, Atom, Attribute, BitSet, BitSet, BitSet, BitSet1, BitSet2, BitSetLike, BitSetN, Buffer, BufferLike, BufferProxy, BufferWrapper, Comment, ConcurrentMap, Cons, Content, DefaultKeySet, DefaultKeySet, DefaultKeySortedSet, DefaultKeySortedSet, DefaultMap, DefaultMap, DefaultMapModel, DefaultValuesIterable, Document, DoubleLinkedList, DoubleLinkedListLike, DroppedWhile, DroppedWhile, DroppedWhile, DroppedWhile, DroppedWhile, Elem, Empty, EmptyView, EmptyView, EmptyView, EmptyView, EntityRef, Exclusive, Filtered, Filtered, Filtered, Filtered, Filtered, FilteredKeys, FilteredKeys, FlatMapped, FlatMapped, FlatMapped, FlatMapped, Forced, Forced, Forced, Forced, Group, HashMap, HashMap, HashMap1, HashSet, HashSet, HashSet1, HashTrieMap, HashTrieSet, History, ImmutableDefaultKeySet, ImmutableMapAdaptor, ImmutableSetAdaptor, Impl, Inclusive, Inclusive, IndexedSeq, IndexedSeq, IndexedSeq, IndexedSeqLike, IndexedSeqLike, IndexedSeqOptimized, IndexedSeqOptimized, IndexedSeqView, Indices, IntMap, Iterable, Iterable, Iterable, IterableForwarder, IterableLike, IterableProxy, IterableProxyLike, IterableView, IterableViewLike, LinearSeq, LinearSeq, LinearSeq, LinearSeqLike, LinearSeqOptimized, LinkedHashMap, LinkedHashSet, LinkedList, LinkedListLike, List, ListBuffer, ListMap, ListMap, ListSet, LongMap, Map, Map, Map, Map, Map1, Map2, Map3, Map4, MapLike, MapLike, MapLike, MapProxy, MapProxy, MapProxy, MapProxyLike, Mapped, Mapped, Mapped, Mapped, MappedValues, MappedValues, MemberScope, MemberScopeApi, MetaData, MultiMap, MutableList, Nil, Node, Node, Node, NodeBuffer, NodeSeq, Null, NumericRange, ObservableBuffer, ObservableMap, ObservableSet, OpenHashMap, PCData, PagedSeq, Patched, Patched, PicklerEnv, PrefixedAttribute, Prepended, Prepended, PriorityQueue, PriorityQueueProxy, ProcInstr, Queue, Queue, QueueProxy, Range, RefBuffer, ResizableArray, Reversed, Reversed, Reversed, RevertibleHistory, Scope, Scope, ScopeApi, Script, SelectionSet, Seq, Seq, Seq, SeqForwarder, SeqLike, SeqLike, SeqProxy, SeqProxyLike, SeqView, SeqViewLike, Set, Set, Set, Set1, Set2, Set3, Set4, SetLike, SetLike, SetProxy, SetProxy, SetProxy, SetProxyLike, Sliced, Sliced, Sliced, Sliced, Sliced, SortedMap, SortedMap, SortedMapLike, SortedSet, SortedSet, SortedSet, SortedSetLike, SpecialNode, Stack, Stack, StackProxy, Stream, StreamView, StreamViewLike, StringBuilder, StringLike, StringOps, SynchronizedBuffer, SynchronizedMap, SynchronizedPriorityQueue, SynchronizedQueue, SynchronizedSet, SynchronizedStack, SystemProperties, TakenWhile, TakenWhile, TakenWhile, TakenWhile, TakenWhile, Text, Transformed, Transformed, Transformed, Transformed, Transformed, Traversable, Traversable, Traversable, TraversableForwarder, TraversableProxy, TraversableProxyLike, TraversableView, TraversableViewLike, TreeMap, TreeSet, TreeSet, TrieMap, UnPicklerEnv, Unparsed, UnprefixedAttribute, UnrolledBuffer, ValueSet, Vector, WeakHashMap, WithDefault, WithDefault, WithDefault, WrappedArray, WrappedString, Zipped, Zipped, Zipped, ZippedAll, ZippedAll, ZippedAll, columns, indices, items, ofBoolean, ofBoolean, ofByte, ofByte, ofChar, ofChar, ofDouble, ofDouble, ofFloat, ofFloat, ofInt, ofInt, ofLong, ofLong, ofRef, ofRef, ofShort, ofShort, ofUnit, ofUnit, pages, rows
Type Hierarchy Learn more about scaladoc diagrams
Ordering

1. Alphabetic
2. By inheritance

Inherited

1. TraversableLike
2. GenTraversableLike
3. Parallelizable
4. TraversableOnce
5. GenTraversableOnce
6. FilterMonadic
7. HasNewBuilder
8. Any

Implicitly

1. by traversable2ops
2. by MonadOps
3. by any2stringadd
4. by any2stringfmt
5. by any2ArrowAssoc
6. by any2Ensuring
7. by alternateImplicit

1. Hide All
2. Show all

Learn more about member selection
Visibility

1. Public
2. All

### Type Members

1. #### type Self = Repr

   The type implementing this traversable

   The type implementing this traversable

   Attributes
     protected

2. #### class WithFilter extends FilterMonadic[A, Repr]

   A class supporting filtered operations.

### Abstract Value Members

1. #### abstract def getClass(): Class[_]

   Returns the runtime class representation of the object.

   Returns the runtime class representation of the object.

   returns

     a class object corresponding to the runtime type of the receiver.

   Definition Classes
     Any

2. #### abstract def newBuilder: Builder[A, Repr]

   Creates a new builder for this collection type.

   Creates a new builder for this collection type.

   Attributes
     protected[this]
   Definition Classes
     TraversableLike → HasNewBuilder

3. #### abstract def seq: TraversableOnce[A]

   Definition Classes
     Parallelizable

### Concrete Value Members

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

   Test two objects for inequality.

   Test two objects for inequality.

   returns

     `true` if !(this == that), false otherwise.

   Definition Classes
     Any

2. #### final def ##(): Int

   Equivalent to `x.hashCode` except for boxed numeric types and `null`.

   Equivalent to `x.hashCode` except for boxed numeric types and `null`. For numerics, it returns a hash value which is consistent with value equality: if two value type instances compare as true, then ## will produce the same hash value for each of them. For `null` returns a hashcode where `null.hashCode` throws a `NullPointerException`.

   returns

     a hash value consistent with ==

   Definition Classes
     Any

3. #### def +(other: String): String

   Implicit information
     This member is added by an implicit conversion from TraversableLike[A, Repr] to StringAdd performed by method any2stringadd in scala.Predef.
   Definition Classes
     StringAdd

4. #### def ++[B](that: GenTraversableOnce[B]): Traversable[B]

   [use case] Returns a new traversable collection containing the elements from the left hand operand followed by the elements from the right hand operand.

   [use case]

   Returns a new traversable collection containing the elements from the left hand operand followed by the elements from the right hand operand. The element type of the traversable collection is the most specific superclass encompassing the element types of the two operands.

   Example:

       scala> val a = LinkedList(1)
       a: scala.collection.mutable.LinkedList[Int] = LinkedList(1)

       scala> val b = LinkedList(2)
       b: scala.collection.mutable.LinkedList[Int] = LinkedList(2)

       scala> val c = a ++ b
       c: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)

       scala> val d = LinkedList('a')
       d: scala.collection.mutable.LinkedList[Char] = LinkedList(a)

       scala> val e = c ++ d
       e: scala.collection.mutable.LinkedList[AnyVal] = LinkedList(1, 2, a)

   B

     the element type of the returned collection.

   that

     the traversable to append.

   returns

     a new traversable collection which contains all elements of this traversable collection followed by all elements of `that`.

   Definition Classes
     TraversableLike → GenTraversableLike
   Full Signature

   #### def ++[B >: A, That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[Repr, B, That]): That

5. #### def ++:[B >: A, That](that: Traversable[B])(implicit bf: CanBuildFrom[Repr, B, That]): That

   As with `++`, returns a new collection containing the elements from the left operand followed by the elements from the right operand.

   As with `++`, returns a new collection containing the elements from the left operand followed by the elements from the right operand.

   It differs from `++` in that the right operand determines the type of the resulting collection rather than the left one. Mnemonic: the COLon is on the side of the new COLlection type.

   Example:

       scala> val x = List(1)
       x: List[Int] = List(1)

       scala> val y = LinkedList(2)
       y: scala.collection.mutable.LinkedList[Int] = LinkedList(2)

       scala> val z = x ++: y
       z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)

   This overload exists because: for the implementation of `++:` we should reuse that of `++` because many collections override it with more efficient versions.

   Since `TraversableOnce` has no `++` method, we have to implement that directly, but `Traversable` and down can use the overload.

   B

     the element type of the returned collection.

   That

     the class of the returned collection. Where possible, `That` is the same class as the current collection class `Repr`, but this depends on the element type `B` being admissible for that class, which means that an implicit instance of type `CanBuildFrom[Repr, B, That]` is found.

   that

     the traversable to append.

   bf

     an implicit value of class `CanBuildFrom` which determines the result class `That` from the current representation type `Repr` and and the new element type `B`.

   returns

     a new collection of type `That` which contains all elements of this traversable collection followed by all elements of `that`.

6. #### def ++:[B](that: TraversableOnce[B]): Traversable[B]

   [use case] As with `++`, returns a new collection containing the elements from the left operand followed by the elements from the right operand.

   [use case]

   As with `++`, returns a new collection containing the elements from the left operand followed by the elements from the right operand.

   It differs from `++` in that the right operand determines the type of the resulting collection rather than the left one. Mnemonic: the COLon is on the side of the new COLlection type.

   Example:

       scala> val x = List(1)
       x: List[Int] = List(1)

       scala> val y = LinkedList(2)
       y: scala.collection.mutable.LinkedList[Int] = LinkedList(2)

       scala> val z = x ++: y
       z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)

   B

     the element type of the returned collection.

   that

     the traversable to append.

   returns

     a new traversable collection which contains all elements of this traversable collection followed by all elements of `that`.

   Full Signature

   #### def ++:[B >: A, That](that: TraversableOnce[B])(implicit bf: CanBuildFrom[Repr, B, That]): That

7. #### def ->[B](y: B): (TraversableLike[A, Repr], B)

   Implicit information
     This member is added by an implicit conversion from TraversableLike[A, Repr] to ArrowAssoc[TraversableLike[A, Repr]] performed by method any2ArrowAssoc in scala.Predef.
   Definition Classes
     ArrowAssoc
   Annotations
     @inline()

8. #### def /:[B](z: B)(op: (B, A) ⇒ B): B

   Applies a binary operator to a start value and all elements of this traversable collection, going left to right.

   Applies a binary operator to a start value and all elements of this traversable collection, going left to right.

   Note: `/:` is alternate syntax for `foldLeft`; `z /: xs` is the same as `xs foldLeft z`.

   Examples:

   Note that the folding function used to compute b is equivalent to that used to compute c.

       scala> val a = LinkedList(1,2,3,4)
       a: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2, 3, 4)

       scala> val b = (5 /: a)(_+_)
       b: Int = 15

       scala> val c = (5 /: a)((x,y) => x + y)
       c: Int = 15

   Note: will not terminate for infinite-sized collections.

   Note: might return different results for different runs, unless the underlying collection type is ordered. or the operator is associative and commutative.

   B

     the result type of the binary operator.

   z

     the start value.

   op

     the binary operator.

   returns

     the result of inserting `op` between consecutive elements of this traversable collection, going left to right with the start value `z` on the left:

         op(...op(op(z, x_1), x_2), ..., x_n)

     where `x1, ..., xn` are the elements of this traversable collection.

   Definition Classes
     TraversableOnce → GenTraversableOnce

9. #### def :\[B](z: B)(op: (A, B) ⇒ B): B

   Applies a binary operator to all elements of this traversable collection and a start value, going right to left.

   Applies a binary operator to all elements of this traversable collection and a start value, going right to left.

   Note: `:\` is alternate syntax for `foldRight`; `xs :\ z` is the same as `xs foldRight z`.

   Note: will not terminate for infinite-sized collections.

   Note: might return different results for different runs, unless the underlying collection type is ordered. or the operator is associative and commutative.

   Examples:

   Note that the folding function used to compute b is equivalent to that used to compute c.

       scala> val a = LinkedList(1,2,3,4)
       a: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2, 3, 4)

       scala> val b = (a :\ 5)(_+_)
       b: Int = 15

       scala> val c = (a :\ 5)((x,y) => x + y)
       c: Int = 15

   B

     the result type of the binary operator.

   z

     the start value

   op

     the binary operator

   returns

     the result of inserting `op` between consecutive elements of this traversable collection, going right to left with the start value `z` on the right:

         op(x_1, op(x_2, ... op(x_n, z)...))

     where `x1, ..., xn` are the elements of this traversable collection.

   Definition Classes
     TraversableOnce → GenTraversableOnce

10. #### final def ==(arg0: Any): Boolean

    Test two objects for equality.

    Test two objects for equality. The expression `x == that` is equivalent to `if (x eq null) that eq null else x.equals(that)`.

    returns

      `true` if the receiver object is equivalent to the argument; `false` otherwise.

    Definition Classes
      Any

11. #### def addString(b: StringBuilder): StringBuilder

    Appends all elements of this traversable collection to a string builder.

    Appends all elements of this traversable collection to a string builder. The written text consists of the string representations (w.r.t. the method `toString`) of all elements of this traversable collection without any separator string.

    Example:

        scala> val a = LinkedList(1,2,3,4)
        a: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2, 3, 4)

        scala> val b = new StringBuilder()
        b: StringBuilder =

        scala> val h = a.addString(b)
        b: StringBuilder = 1234

    b

      the string builder to which elements are appended.

    returns

      the string builder `b` to which elements were appended.

    Definition Classes
      TraversableOnce

12. #### def addString(b: StringBuilder, sep: String): StringBuilder

    Appends all elements of this traversable collection to a string builder using a separator string.

    Appends all elements of this traversable collection to a string builder using a separator string. The written text consists of the string representations (w.r.t. the method `toString`) of all elements of this traversable collection, separated by the string `sep`.

    Example:

        scala> val a = LinkedList(1,2,3,4)
        a: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2, 3, 4)

        scala> val b = new StringBuilder()
        b: StringBuilder =

        scala> a.addString(b, ", ")
        res0: StringBuilder = 1, 2, 3, 4

    b

      the string builder to which elements are appended.

    sep

      the separator string.

    returns

      the string builder `b` to which elements were appended.

    Definition Classes
      TraversableOnce

13. #### def addString(b: StringBuilder, start: String, sep: String, end: String): StringBuilder

    Appends all elements of this traversable collection to a string builder using start, end, and separator strings.

    Appends all elements of this traversable collection to a string builder using start, end, and separator strings. The written text begins with the string `start` and ends with the string `end`. Inside, the string representations (w.r.t. the method `toString`) of all elements of this traversable collection are separated by the string `sep`.

    Example:

        scala> val a = LinkedList(1,2,3,4)
        a: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2, 3, 4)

        scala> val b = new StringBuilder()
        b: StringBuilder =

        scala> a.addString(b, "LinkedList(", ", ", ")")
        res1: StringBuilder = LinkedList(1, 2, 3, 4)

    b

      the string builder to which elements are appended.

    start

      the starting string.

    sep

      the separator string.

    end

      the ending string.

    returns

      the string builder `b` to which elements were appended.

    Definition Classes
      TraversableOnce

14. #### def aggregate[B](z: B)(seqop: (B, A) ⇒ B, combop: (B, B) ⇒ B): B

    Aggregates the results of applying an operator to subsequent elements.

    Aggregates the results of applying an operator to subsequent elements.

    This is a more general form of `fold` and `reduce`. It has similar semantics, but does not require the result to be a supertype of the element type. It traverses the elements in different partitions sequentially, using `seqop` to update the result, and then applies `combop` to results from different partitions. The implementation of this operation may operate on an arbitrary number of collection partitions, so `combop` may be invoked an arbitrary number of times.

    For example, one might want to process some elements and then produce a `Set`. In this case, `seqop` would process an element and append it to the list, while `combop` would concatenate two lists from different partitions together. The initial value `z` would be an empty set.

        pc.aggregate(Set[Int]())(_ += process(_), _ ++ _)

    Another example is calculating geometric mean from a collection of doubles (one would typically require big doubles for this).

    B

      the type of accumulated results

    z

      the initial value for the accumulated result of the partition - this will typically be the neutral element for the `seqop` operator (e.g. `Nil` for list concatenation or `0` for summation)

    seqop

      an operator used to accumulate results within a partition

    combop

      an associative operator used to combine results from different partitions

    Definition Classes
      TraversableOnce → GenTraversableOnce

15. #### final def asInstanceOf[T0]: T0

    Cast the receiver object to be of type `T0`.

    Cast the receiver object to be of type `T0`.

    Note that the success of a cast at runtime is modulo Scala's erasure semantics. Therefore the expression `1.asInstanceOf[String]` will throw a `ClassCastException` at runtime, while the expression `List(1).asInstanceOf[List[String]]` will not. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the requested type.

    returns

      the receiver object.

    Definition Classes
      Any
    Exceptions thrown
      ClassCastException

      if the receiver object is not an instance of the erasure of type `T0`.

16. #### def asParIterable: ParIterable[A]

    Implicit information
      This member is added by an implicit conversion from TraversableLike[A, Repr] to TraversableOps[A] performed by method traversable2ops in scala.collection.parallel.
    Definition Classes
      TraversableOps

17. #### def asParSeq: ParSeq[A]

    Implicit information
      This member is added by an implicit conversion from TraversableLike[A, Repr] to TraversableOps[A] performed by method traversable2ops in scala.collection.parallel.
    Definition Classes
      TraversableOps

18. #### def collect[B](pf: PartialFunction[A, B]): Traversable[B]

    [use case] Builds a new collection by applying a partial function to all elements of this traversable collection on which the function is defined.

    [use case]

    Builds a new collection by applying a partial function to all elements of this traversable collection on which the function is defined.

    B

      the element type of the returned collection.

    pf

      the partial function which filters and maps the traversable collection.

    returns

      a new traversable collection resulting from applying the given partial function `pf` to each element on which it is defined and collecting the results. The order of the elements is preserved.

    Definition Classes
      TraversableLike → GenTraversableLike
    Full Signature

    #### def collect[B, That](pf: PartialFunction[A, B])(implicit bf: CanBuildFrom[Repr, B, That]): That

19. #### def collectFirst[B](pf: PartialFunction[A, B]): Option[B]

    Finds the first element of the traversable collection for which the given partial function is defined, and applies the partial function to it.

    Finds the first element of the traversable collection for which the given partial function is defined, and applies the partial function to it.

    Note: may not terminate for infinite-sized collections.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    pf

      the partial function

    returns

      an option value containing pf applied to the first value for which it is defined, or `None` if none exists.

    Definition Classes
      TraversableOnce
    Example:

    1. `Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)`

20. #### def copyToArray(xs: Array[A], start: Int, len: Int): Unit

    [use case] Copies elements of this traversable collection to an array.

    [use case]

    Copies elements of this traversable collection to an array. Fills the given array `xs` with at most `len` elements of this traversable collection, starting at position `start`. Copying will stop once either the end of the current traversable collection is reached, or the end of the array is reached, or `len` elements have been copied.

    Note: will not terminate for infinite-sized collections.

    xs

      the array to fill.

    start

      the starting index.

    len

      the maximal number of elements to copy.

    Definition Classes
      TraversableLike → TraversableOnce → GenTraversableOnce
    Full Signature

    #### def copyToArray[B >: A](xs: Array[B], start: Int, len: Int): Unit

21. #### def copyToArray(xs: Array[A]): Unit

    [use case] Copies values of this traversable collection to an array.

    [use case]

    Copies values of this traversable collection to an array. Fills the given array `xs` with values of this traversable collection. Copying will stop once either the end of the current traversable collection is reached, or the end of the array is reached.

    Note: will not terminate for infinite-sized collections.

    xs

      the array to fill.

    Definition Classes
      TraversableOnce → GenTraversableOnce
    Full Signature

    #### def copyToArray[B >: A](xs: Array[B]): Unit

22. #### def copyToArray(xs: Array[A], start: Int): Unit

    [use case] Copies values of this traversable collection to an array.

    [use case]

    Copies values of this traversable collection to an array. Fills the given array `xs` with values of this traversable collection, beginning at index `start`. Copying will stop once either the end of the current traversable collection is reached, or the end of the array is reached.

    Note: will not terminate for infinite-sized collections.

    xs

      the array to fill.

    start

      the starting index.

    Definition Classes
      TraversableOnce → GenTraversableOnce
    Full Signature

    #### def copyToArray[B >: A](xs: Array[B], start: Int): Unit

23. #### def copyToBuffer[B >: A](dest: Buffer[B]): Unit

    Copies all elements of this traversable collection to a buffer.

    Copies all elements of this traversable collection to a buffer.

    Note: will not terminate for infinite-sized collections.

    dest

      The buffer to which elements are copied.

    Definition Classes
      TraversableOnce

24. #### def count(p: (A) ⇒ Boolean): Int

    Counts the number of elements in the traversable collection which satisfy a predicate.

    Counts the number of elements in the traversable collection which satisfy a predicate.

    p

      the predicate used to test elements.

    returns

      the number of elements satisfying the predicate `p`.

    Definition Classes
      TraversableOnce → GenTraversableOnce

25. #### def drop(n: Int): Repr

    Selects all elements except first n ones.

    Selects all elements except first n ones.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    n

      the number of elements to drop from this traversable collection.

    returns

      a traversable collection consisting of all elements of this traversable collection except the first `n` ones, or else the empty traversable collection, if this traversable collection has less than `n` elements.

    Definition Classes
      TraversableLike → GenTraversableLike

26. #### def dropWhile(p: (A) ⇒ Boolean): Repr

    Drops longest prefix of elements that satisfy a predicate.

    Drops longest prefix of elements that satisfy a predicate.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    returns

      the longest suffix of this traversable collection whose first element does not satisfy the predicate `p`.

    Definition Classes
      TraversableLike → GenTraversableLike

27. #### def ensuring(cond: (TraversableLike[A, Repr]) ⇒ Boolean, msg: ⇒ Any): TraversableLike[A, Repr]

    Implicit information
      This member is added by an implicit conversion from TraversableLike[A, Repr] to Ensuring[TraversableLike[A, Repr]] performed by method any2Ensuring in scala.Predef.
    Definition Classes
      Ensuring

28. #### def ensuring(cond: (TraversableLike[A, Repr]) ⇒ Boolean): TraversableLike[A, Repr]

    Implicit information
      This member is added by an implicit conversion from TraversableLike[A, Repr] to Ensuring[TraversableLike[A, Repr]] performed by method any2Ensuring in scala.Predef.
    Definition Classes
      Ensuring

29. #### def ensuring(cond: Boolean, msg: ⇒ Any): TraversableLike[A, Repr]

    Implicit information
      This member is added by an implicit conversion from TraversableLike[A, Repr] to Ensuring[TraversableLike[A, Repr]] performed by method any2Ensuring in scala.Predef.
    Definition Classes
      Ensuring

30. #### def ensuring(cond: Boolean): TraversableLike[A, Repr]

    Implicit information
      This member is added by an implicit conversion from TraversableLike[A, Repr] to Ensuring[TraversableLike[A, Repr]] performed by method any2Ensuring in scala.Predef.
    Definition Classes
      Ensuring

31. #### def equals(arg0: Any): Boolean

    Compares the receiver object (`this`) with the argument object (`that`) for equivalence.

    Compares the receiver object (`this`) with the argument object (`that`) for equivalence.

    Any implementation of this method should be an equivalence relation:

    - It is reflexive: for any instance `x` of type `Any`, `x.equals(x)` should return `true`.
    - It is symmetric: for any instances `x` and `y` of type `Any`, `x.equals(y)` should return `true` if and only if `y.equals(x)` returns `true`.
    - It is transitive: for any instances `x`, `y`, and `z` of type `AnyRef` if `x.equals(y)` returns `true` and `y.equals(z)` returns `true`, then `x.equals(z)` should return `true`.

    If you override this method, you should verify that your implementation remains an equivalence relation. Additionally, when overriding this method it is usually necessary to override `hashCode` to ensure that objects which are "equal" (`o1.equals(o2)` returns `true`) hash to the same scala.Int. (`o1.hashCode.equals(o2.hashCode)`).

    returns

      `true` if the receiver object is equivalent to the argument; `false` otherwise.

    Definition Classes
      Any

32. #### def exists(p: (A) ⇒ Boolean): Boolean

    Tests whether a predicate holds for some of the elements of this traversable collection.

    Tests whether a predicate holds for some of the elements of this traversable collection.

    Note: may not terminate for infinite-sized collections.

    p

      the predicate used to test elements.

    returns

      `true` if the given predicate `p` holds for some of the elements of this traversable collection, otherwise `false`.

    Definition Classes
      TraversableLike → TraversableOnce → GenTraversableOnce

33. #### def filter(p: (A) ⇒ Boolean): Repr

    Selects all elements of this traversable collection which satisfy a predicate.

    Selects all elements of this traversable collection which satisfy a predicate.

    p

      the predicate used to test elements.

    returns

      a new traversable collection consisting of all elements of this traversable collection that satisfy the given predicate `p`. The order of the elements is preserved.

    Definition Classes
      TraversableLike → GenTraversableLike

34. #### def filterNot(p: (A) ⇒ Boolean): Repr

    Selects all elements of this traversable collection which do not satisfy a predicate.

    Selects all elements of this traversable collection which do not satisfy a predicate.

    p

      the predicate used to test elements.

    returns

      a new traversable collection consisting of all elements of this traversable collection that do not satisfy the given predicate `p`. The order of the elements is preserved.

    Definition Classes
      TraversableLike → GenTraversableLike

35. #### def find(p: (A) ⇒ Boolean): Option[A]

    Finds the first element of the traversable collection satisfying a predicate, if any.

    Finds the first element of the traversable collection satisfying a predicate, if any.

    Note: may not terminate for infinite-sized collections.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    p

      the predicate used to test elements.

    returns

      an option value containing the first element in the traversable collection that satisfies `p`, or `None` if none exists.

    Definition Classes
      TraversableLike → TraversableOnce → GenTraversableOnce

36. #### def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): Traversable[B]

    [use case] Builds a new collection by applying a function to all elements of this traversable collection and using the elements of the resulting collections.

    [use case]

    Builds a new collection by applying a function to all elements of this traversable collection and using the elements of the resulting collections.

    For example:

        def getWords(lines: Seq[String]): Seq[String] = lines flatMap (line => line split "\\W+")

    The type of the resulting collection is guided by the static type of traversable collection. This might cause unexpected results sometimes. For example:

        // lettersOf will return a Seq[Char] of likely repeated letters, instead of a Set
        def lettersOf(words: Seq[String]) = words flatMap (word => word.toSet)

        // lettersOf will return a Set[Char], not a Seq
        def lettersOf(words: Seq[String]) = words.toSet flatMap (word => word.toSeq)

        // xs will be a an Iterable[Int]
        val xs = Map("a" -> List(11,111), "b" -> List(22,222)).flatMap(_._2)

        // ys will be a Map[Int, Int]
        val ys = Map("a" -> List(1 -> 11,1 -> 111), "b" -> List(2 -> 22,2 -> 222)).flatMap(_._2)

    B

      the element type of the returned collection.

    f

      the function to apply to each element.

    returns

      a new traversable collection resulting from applying the given collection-valued function `f` to each element of this traversable collection and concatenating the results.

    Definition Classes
      TraversableLike → GenTraversableLike → FilterMonadic
    Full Signature

    #### def flatMap[B, That](f: (A) ⇒ GenTraversableOnce[B])(implicit bf: CanBuildFrom[Repr, B, That]): That

37. #### def fold[A1 >: A](z: A1)(op: (A1, A1) ⇒ A1): A1

    Folds the elements of this traversable collection using the specified associative binary operator.

    Folds the elements of this traversable collection using the specified associative binary operator.

    The order in which operations are performed on elements is unspecified and may be nondeterministic.

    A1

      a type parameter for the binary operator, a supertype of `A`.

    z

      a neutral element for the fold operation; may be added to the result an arbitrary number of times, and must not change the result (e.g., `Nil` for list concatenation, 0 for addition, or 1 for multiplication.)

    op

      a binary operator that must be associative

    returns

      the result of applying fold operator `op` between all the elements and `z`

    Definition Classes
      TraversableOnce → GenTraversableOnce

38. #### def foldLeft[B](z: B)(op: (B, A) ⇒ B): B

    Applies a binary operator to a start value and all elements of this traversable collection, going left to right.

    Applies a binary operator to a start value and all elements of this traversable collection, going left to right.

    Note: will not terminate for infinite-sized collections.

    Note: might return different results for different runs, unless the underlying collection type is ordered. or the operator is associative and commutative.

    B

      the result type of the binary operator.

    z

      the start value.

    op

      the binary operator.

    returns

      the result of inserting `op` between consecutive elements of this traversable collection, going left to right with the start value `z` on the left:

          op(...op(z, x_1), x_2, ..., x_n)

      where `x1, ..., xn` are the elements of this traversable collection.

    Definition Classes
      TraversableOnce → GenTraversableOnce

39. #### def foldRight[B](z: B)(op: (A, B) ⇒ B): B

    Applies a binary operator to all elements of this traversable collection and a start value, going right to left.

    Applies a binary operator to all elements of this traversable collection and a start value, going right to left.

    Note: will not terminate for infinite-sized collections.

    Note: might return different results for different runs, unless the underlying collection type is ordered. or the operator is associative and commutative.

    B

      the result type of the binary operator.

    z

      the start value.

    op

      the binary operator.

    returns

      the result of inserting `op` between consecutive elements of this traversable collection, going right to left with the start value `z` on the right:

          op(x_1, op(x_2, ... op(x_n, z)...))

      where `x1, ..., xn` are the elements of this traversable collection.

    Definition Classes
      TraversableOnce → GenTraversableOnce

40. #### def forall(p: (A) ⇒ Boolean): Boolean

    Tests whether a predicate holds for all elements of this traversable collection.

    Tests whether a predicate holds for all elements of this traversable collection.

    Note: may not terminate for infinite-sized collections.

    p

      the predicate used to test elements.

    returns

      `true` if the given predicate `p` holds for all elements of this traversable collection, otherwise `false`.

    Definition Classes
      TraversableLike → TraversableOnce → GenTraversableOnce

41. #### abstract def foreach(f: (A) ⇒ Unit): Unit

    [use case] Applies a function `f` to all elements of this traversable collection.

    [use case]

    Applies a function `f` to all elements of this traversable collection.

    Note: this method underlies the implementation of most other bulk operations. It's important to implement this method in an efficient way.

    f

      the function that is applied for its side-effect to every element. The result of function `f` is discarded.

    Definition Classes
      TraversableLike → GenTraversableLike → TraversableOnce → GenTraversableOnce → FilterMonadic
    Full Signature

    #### abstract def foreach[U](f: (A) ⇒ U): Unit

42. #### def formatted(fmtstr: String): String

    Returns string formatted according to given `format` string.

    Returns string formatted according to given `format` string. Format strings are as for `String.format` (@see java.lang.String.format).

    Implicit information
      This member is added by an implicit conversion from TraversableLike[A, Repr] to StringFormat performed by method any2stringfmt in scala.Predef.
    Definition Classes
      StringFormat
    Annotations
      @inline()

43. #### def groupBy[K](f: (A) ⇒ K): immutable.Map[K, Repr]

    Partitions this traversable collection into a map of traversable collections according to some discriminator function.

    Partitions this traversable collection into a map of traversable collections according to some discriminator function.

    Note: this method is not re-implemented by views. This means when applied to a view it will always force the view and return a new traversable collection.

    K

      the type of keys returned by the discriminator function.

    f

      the discriminator function.

    returns

      A map from keys to traversable collections such that the following invariant holds:

          (xs partition f)(k) = xs filter (x => f(x) == k)

      That is, every key `k` is bound to a traversable collection of those elements `x` for which `f(x)` equals `k`.

    Definition Classes
      TraversableLike → GenTraversableLike

44. #### def hasDefiniteSize: Boolean

    Tests whether this traversable collection is known to have a finite size.

    Tests whether this traversable collection is known to have a finite size. All strict collections are known to have finite size. For a non-strict collection such as `Stream`, the predicate returns `true` if all elements have been computed. It returns `false` if the stream is not yet evaluated to the end.

    Note: many collection methods will not work on collections of infinite sizes.

    returns

      `true` if this collection is known to have finite size, `false` otherwise.

    Definition Classes
      TraversableLike → TraversableOnce → GenTraversableOnce

45. #### def hashCode(): Int

    Calculate a hash code value for the object.

    Calculate a hash code value for the object.

    The default hashing algorithm is platform dependent.

    Note that it is allowed for two objects to have identical hash codes (`o1.hashCode.equals(o2.hashCode)`) yet not be equal (`o1.equals(o2)` returns `false`). A degenerate implementation could always return `0`. However, it is required that if two objects are equal (`o1.equals(o2)` returns `true`) that they have identical hash codes (`o1.hashCode.equals(o2.hashCode)`). Therefore, when overriding this method, be sure to verify that the behavior is consistent with the `equals` method.

    returns

      the hash code value for this object.

    Definition Classes
      Any

46. #### def head: A

    Selects the first element of this traversable collection.

    Selects the first element of this traversable collection.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    returns

      the first element of this traversable collection.

    Definition Classes
      TraversableLike → GenTraversableLike
    Exceptions thrown
      `NoSuchElementException`

      if the traversable collection is empty.

47. #### def headOption: Option[A]

    Optionally selects the first element.

    Optionally selects the first element.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    returns

      the first element of this traversable collection if it is nonempty, `None` if it is empty.

    Definition Classes
      TraversableLike → GenTraversableLike

48. #### def ifParSeq[R](isbody: (ParSeq[A]) ⇒ R): (TraversableOps[A])#Otherwise[R]

    Implicit information
      This member is added by an implicit conversion from TraversableLike[A, Repr] to TraversableOps[A] performed by method traversable2ops in scala.collection.parallel.
    Definition Classes
      TraversableOps

49. #### def init: Repr

    Selects all elements except the last.

    Selects all elements except the last.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    returns

      a traversable collection consisting of all elements of this traversable collection except the last one.

    Definition Classes
      TraversableLike → GenTraversableLike
    Exceptions thrown
      `UnsupportedOperationException`

      if the traversable collection is empty.

50. #### def inits: Iterator[Repr]

    Iterates over the inits of this traversable collection.

    Iterates over the inits of this traversable collection. The first value will be this traversable collection and the final one will be an empty traversable collection, with the intervening values the results of successive applications of `init`.

    returns

      an iterator over all the inits of this traversable collection

    Example:

    1. `List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)`

51. #### def isEmpty: Boolean

    Tests whether this traversable collection is empty.

    Tests whether this traversable collection is empty.

    returns

      `true` if the traversable collection contain no elements, `false` otherwise.

    Definition Classes
      TraversableLike → TraversableOnce → GenTraversableOnce

52. #### final def isInstanceOf[T0]: Boolean

    Test whether the dynamic type of the receiver object is `T0`.

    Test whether the dynamic type of the receiver object is `T0`.

    Note that the result of the test is modulo Scala's erasure semantics. Therefore the expression `1.isInstanceOf[String]` will return `false`, while the expression `List(1).isInstanceOf[List[String]]` will return `true`. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the specified type.

    returns

      `true` if the receiver object is an instance of erasure of type `T0`; `false` otherwise.

    Definition Classes
      Any

53. #### def isParIterable: Boolean

    Implicit information
      This member is added by an implicit conversion from TraversableLike[A, Repr] to TraversableOps[A] performed by method traversable2ops in scala.collection.parallel.
    Definition Classes
      TraversableOps

54. #### def isParSeq: Boolean

    Implicit information
      This member is added by an implicit conversion from TraversableLike[A, Repr] to TraversableOps[A] performed by method traversable2ops in scala.collection.parallel.
    Definition Classes
      TraversableOps

55. #### def isParallel: Boolean

    Implicit information
      This member is added by an implicit conversion from TraversableLike[A, Repr] to TraversableOps[A] performed by method traversable2ops in scala.collection.parallel.
    Definition Classes
      TraversableOps

56. #### final def isTraversableAgain: Boolean

    Tests whether this traversable collection can be repeatedly traversed.

    Tests whether this traversable collection can be repeatedly traversed.

    returns

      `true`

    Definition Classes
      TraversableLike → GenTraversableLike → GenTraversableOnce

57. #### def last: A

    Selects the last element.

    Selects the last element.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    returns

      The last element of this traversable collection.

    Definition Classes
      TraversableLike → GenTraversableLike
    Exceptions thrown
      NoSuchElementException

      If the traversable collection is empty.

58. #### def lastOption: Option[A]

    Optionally selects the last element.

    Optionally selects the last element.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    returns

      the last element of this traversable collection$ if it is nonempty, `None` if it is empty.

    Definition Classes
      TraversableLike → GenTraversableLike

59. #### def map[B](f: (A) ⇒ B): Traversable[B]

    [use case] Builds a new collection by applying a function to all elements of this traversable collection.

    [use case]

    Builds a new collection by applying a function to all elements of this traversable collection.

    B

      the element type of the returned collection.

    f

      the function to apply to each element.

    returns

      a new traversable collection resulting from applying the given function `f` to each element of this traversable collection and collecting the results.

    Definition Classes
      TraversableLike → GenTraversableLike → FilterMonadic
    Full Signature

    #### def map[B, That](f: (A) ⇒ B)(implicit bf: CanBuildFrom[Repr, B, That]): That

60. #### def max: A

    [use case] Finds the largest element.

    [use case]

    Finds the largest element.

    returns

      the largest element of this traversable collection.

    Definition Classes
      TraversableOnce → GenTraversableOnce
    Full Signature

    #### def max[B >: A](implicit cmp: Ordering[B]): A

61. #### def maxBy[B](f: (A) ⇒ B)(implicit cmp: Ordering[B]): A

    Definition Classes
      TraversableOnce → GenTraversableOnce

62. #### def min: A

    [use case] Finds the smallest element.

    [use case]

    Finds the smallest element.

    returns

      the smallest element of this traversable collection

    Definition Classes
      TraversableOnce → GenTraversableOnce
    Full Signature

    #### def min[B >: A](implicit cmp: Ordering[B]): A

63. #### def minBy[B](f: (A) ⇒ B)(implicit cmp: Ordering[B]): A

    Definition Classes
      TraversableOnce → GenTraversableOnce

64. #### def mkString: String

    Displays all elements of this traversable collection in a string.

    Displays all elements of this traversable collection in a string.

    returns

      a string representation of this traversable collection. In the resulting string the string representations (w.r.t. the method `toString`) of all elements of this traversable collection follow each other without any separator string.

    Definition Classes
      TraversableOnce → GenTraversableOnce

65. #### def mkString(sep: String): String

    Displays all elements of this traversable collection in a string using a separator string.

    Displays all elements of this traversable collection in a string using a separator string.

    sep

      the separator string.

    returns

      a string representation of this traversable collection. In the resulting string the string representations (w.r.t. the method `toString`) of all elements of this traversable collection are separated by the string `sep`.

    Definition Classes
      TraversableOnce → GenTraversableOnce
    Example:

    1. `List(1, 2, 3).mkString("|") = "1|2|3"`

66. #### def mkString(start: String, sep: String, end: String): String

    Displays all elements of this traversable collection in a string using start, end, and separator strings.

    Displays all elements of this traversable collection in a string using start, end, and separator strings.

    start

      the starting string.

    sep

      the separator string.

    end

      the ending string.

    returns

      a string representation of this traversable collection. The resulting string begins with the string `start` and ends with the string `end`. Inside, the string representations (w.r.t. the method `toString`) of all elements of this traversable collection are separated by the string `sep`.

    Definition Classes
      TraversableOnce → GenTraversableOnce
    Example:

    1. `List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"`

67. #### def nonEmpty: Boolean

    Tests whether the traversable collection is not empty.

    Tests whether the traversable collection is not empty.

    returns

      `true` if the traversable collection contains at least one element, `false` otherwise.

    Definition Classes
      TraversableOnce → GenTraversableOnce

68. #### def par: ParIterable[A]

    Returns a parallel implementation of this collection.

    Returns a parallel implementation of this collection.

    For most collection types, this method creates a new parallel collection by copying all the elements. For these collection, `par` takes linear time. Mutable collections in this category do not produce a mutable parallel collection that has the same underlying dataset, so changes in one collection will not be reflected in the other one.

    Specific collections (e.g. `ParArray` or `mutable.ParHashMap`) override this default behaviour by creating a parallel collection which shares the same underlying dataset. For these collections, `par` takes constant or sublinear time.

    All parallel collections return a reference to themselves.

    returns

      a parallel implementation of this collection

    Definition Classes
      Parallelizable

69. #### def parCombiner: Combiner[A, ParIterable[A]]

    The default `par` implementation uses the combiner provided by this method to create a new parallel collection.

    The default `par` implementation uses the combiner provided by this method to create a new parallel collection.

    returns

      a combiner for the parallel collection of type `ParRepr`

    Attributes
      protected[this]
    Definition Classes
      TraversableLike → Parallelizable

70. #### def partition(p: (A) ⇒ Boolean): (Repr, Repr)

    Partitions this traversable collection in two traversable collections according to a predicate.

    Partitions this traversable collection in two traversable collections according to a predicate.

    p

      the predicate on which to partition.

    returns

      a pair of traversable collections: the first traversable collection consists of all elements that satisfy the predicate `p` and the second traversable collection consists of all elements that don't. The relative order of the elements in the resulting traversable collections is the same as in the original traversable collection.

    Definition Classes
      TraversableLike → GenTraversableLike

71. #### def product: A

    [use case] Multiplies up the elements of this collection.

    [use case]

    Multiplies up the elements of this collection.

    returns

      the product of all elements in this traversable collection of numbers of type `Int`. Instead of `Int`, any other type `T` with an implicit `Numeric[T]` implementation can be used as element type of the traversable collection and as result type of `product`. Examples of such types are: `Long`, `Float`, `Double`, `BigInt`.

    Definition Classes
      TraversableOnce → GenTraversableOnce
    Full Signature

    #### def product[B >: A](implicit num: Numeric[B]): B

72. #### def reduce[A1 >: A](op: (A1, A1) ⇒ A1): A1

    Reduces the elements of this traversable collection using the specified associative binary operator.

    Reduces the elements of this traversable collection using the specified associative binary operator.

    The order in which operations are performed on elements is unspecified and may be nondeterministic.

    A1

      A type parameter for the binary operator, a supertype of `A`.

    op

      A binary operator that must be associative.

    returns

      The result of applying reduce operator `op` between all the elements if the traversable collection is nonempty.

    Definition Classes
      TraversableOnce → GenTraversableOnce
    Exceptions thrown
      UnsupportedOperationException

      if this traversable collection is empty.

73. #### def reduceLeft[B >: A](op: (B, A) ⇒ B): B

    Applies a binary operator to all elements of this traversable collection, going left to right.

    Applies a binary operator to all elements of this traversable collection, going left to right.

    Note: will not terminate for infinite-sized collections.

    Note: might return different results for different runs, unless the underlying collection type is ordered. or the operator is associative and commutative.

    B

      the result type of the binary operator.

    op

      the binary operator.

    returns

      the result of inserting `op` between consecutive elements of this traversable collection, going left to right:

          op( op( ... op(x_1, x_2) ..., x_{n-1}), x_n)

      where `x1, ..., xn` are the elements of this traversable collection.

    Definition Classes
      TraversableOnce
    Exceptions thrown
      `UnsupportedOperationException`

      if this traversable collection is empty.

74. #### def reduceLeftOption[B >: A](op: (B, A) ⇒ B): Option[B]

    Optionally applies a binary operator to all elements of this traversable collection, going left to right.

    Optionally applies a binary operator to all elements of this traversable collection, going left to right.

    Note: will not terminate for infinite-sized collections.

    Note: might return different results for different runs, unless the underlying collection type is ordered. or the operator is associative and commutative.

    B

      the result type of the binary operator.

    op

      the binary operator.

    returns

      an option value containing the result of `reduceLeft(op)` is this traversable collection is nonempty, `None` otherwise.

    Definition Classes
      TraversableOnce → GenTraversableOnce

75. #### def reduceOption[A1 >: A](op: (A1, A1) ⇒ A1): Option[A1]

    Reduces the elements of this traversable collection, if any, using the specified associative binary operator.

    Reduces the elements of this traversable collection, if any, using the specified associative binary operator.

    The order in which operations are performed on elements is unspecified and may be nondeterministic.

    A1

      A type parameter for the binary operator, a supertype of `A`.

    op

      A binary operator that must be associative.

    returns

      An option value containing result of applying reduce operator `op` between all the elements if the collection is nonempty, and `None` otherwise.

    Definition Classes
      TraversableOnce → GenTraversableOnce

76. #### def reduceRight[B >: A](op: (A, B) ⇒ B): B

    Applies a binary operator to all elements of this traversable collection, going right to left.

    Applies a binary operator to all elements of this traversable collection, going right to left.

    Note: will not terminate for infinite-sized collections.

    Note: might return different results for different runs, unless the underlying collection type is ordered. or the operator is associative and commutative.

    B

      the result type of the binary operator.

    op

      the binary operator.

    returns

      the result of inserting `op` between consecutive elements of this traversable collection, going right to left:

          op(x_1, op(x_2, ..., op(x_{n-1}, x_n)...))

      where `x1, ..., xn` are the elements of this traversable collection.

    Definition Classes
      TraversableOnce → GenTraversableOnce
    Exceptions thrown
      `UnsupportedOperationException`

      if this traversable collection is empty.

77. #### def reduceRightOption[B >: A](op: (A, B) ⇒ B): Option[B]

    Optionally applies a binary operator to all elements of this traversable collection, going right to left.

    Optionally applies a binary operator to all elements of this traversable collection, going right to left.

    Note: will not terminate for infinite-sized collections.

    Note: might return different results for different runs, unless the underlying collection type is ordered. or the operator is associative and commutative.

    B

      the result type of the binary operator.

    op

      the binary operator.

    returns

      an option value containing the result of `reduceRight(op)` is this traversable collection is nonempty, `None` otherwise.

    Definition Classes
      TraversableOnce → GenTraversableOnce

78. #### def repr: Repr

    The collection of type traversable collection underlying this `TraversableLike` object.

    The collection of type traversable collection underlying this `TraversableLike` object. By default this is implemented as the `TraversableLike` object itself, but this can be overridden.

    Definition Classes
      TraversableLike → GenTraversableLike

79. #### def reversed: List[A]

    Attributes
      protected[this]
    Definition Classes
      TraversableOnce

80. #### def scan[B >: A, That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[Repr, B, That]): That

    Computes a prefix scan of the elements of the collection.

    Computes a prefix scan of the elements of the collection.

    Note: The neutral element `z` may be applied more than once.

    B

      element type of the resulting collection

    That

      type of the resulting collection

    z

      neutral element for the operator `op`

    op

      the associative operator for the scan

    cbf

      combiner factory which provides a combiner

    returns

      a new traversable collection containing the prefix scan of the elements in this traversable collection

    Definition Classes
      TraversableLike → GenTraversableLike

81. #### def scanLeft[B, That](z: B)(op: (B, A) ⇒ B)(implicit bf: CanBuildFrom[Repr, B, That]): That

    Produces a collection containing cumulative results of applying the operator going left to right.

    Produces a collection containing cumulative results of applying the operator going left to right.

    Note: will not terminate for infinite-sized collections.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    B

      the type of the elements in the resulting collection

    That

      the actual type of the resulting collection

    z

      the initial value

    op

      the binary operator applied to the intermediate result and the element

    bf

      an implicit value of class `CanBuildFrom` which determines the result class `That` from the current representation type `Repr` and and the new element type `B`.

    returns

      collection with intermediate results

    Definition Classes
      TraversableLike → GenTraversableLike

82. #### def scanRight[B, That](z: B)(op: (A, B) ⇒ B)(implicit bf: CanBuildFrom[Repr, B, That]): That

    Produces a collection containing cumulative results of applying the operator going right to left.

    Produces a collection containing cumulative results of applying the operator going right to left. The head of the collection is the last cumulative result.

    Note: will not terminate for infinite-sized collections.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    Example:

        List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)

    B

      the type of the elements in the resulting collection

    That

      the actual type of the resulting collection

    z

      the initial value

    op

      the binary operator applied to the intermediate result and the element

    bf

      an implicit value of class `CanBuildFrom` which determines the result class `That` from the current representation type `Repr` and and the new element type `B`.

    returns

      collection with intermediate results

    Definition Classes
      TraversableLike → GenTraversableLike
    Annotations
      @migration
    Migration

      (Changed in version 2.9.0) The behavior of `scanRight` has changed. The previous behavior can be reproduced with scanRight.reverse.

83. #### def size: Int

    The size of this traversable collection.

    The size of this traversable collection.

    Note: will not terminate for infinite-sized collections.

    returns

      the number of elements in this traversable collection.

    Definition Classes
      TraversableOnce → GenTraversableOnce

84. #### def slice(from: Int, until: Int): Repr

    Selects an interval of elements.

    Selects an interval of elements. The returned collection is made up of all elements `x` which satisfy the invariant:

        from <= indexOf(x) < until

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    returns

      a traversable collection containing the elements greater than or equal to index `from` extending up to (but not including) index `until` of this traversable collection.

    Definition Classes
      TraversableLike → GenTraversableLike

85. #### def span(p: (A) ⇒ Boolean): (Repr, Repr)

    Splits this traversable collection into a prefix/suffix pair according to a predicate.

    Splits this traversable collection into a prefix/suffix pair according to a predicate.

    Note: `c span p` is equivalent to (but possibly more efficient than) `(c takeWhile p, c dropWhile p)`, provided the evaluation of the predicate `p` does not cause any side-effects.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    returns

      a pair consisting of the longest prefix of this traversable collection whose elements all satisfy `p`, and the rest of this traversable collection.

    Definition Classes
      TraversableLike → GenTraversableLike

86. #### def splitAt(n: Int): (Repr, Repr)

    Splits this traversable collection into two at a given position.

    Splits this traversable collection into two at a given position. Note: `c splitAt n` is equivalent to (but possibly more efficient than) `(c take n, c drop n)`.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    n

      the position at which to split.

    returns

      a pair of traversable collections consisting of the first `n` elements of this traversable collection, and the other elements.

    Definition Classes
      TraversableLike → GenTraversableLike

87. #### def stringPrefix: String

    Defines the prefix of this object's `toString` representation.

    Defines the prefix of this object's `toString` representation.

    returns

      a string representation which starts the result of `toString` applied to this traversable collection. By default the string prefix is the simple name of the collection class traversable collection.

    Definition Classes
      TraversableLike → GenTraversableLike

88. #### def sum: A

    [use case] Sums up the elements of this collection.

    [use case]

    Sums up the elements of this collection.

    returns

      the sum of all elements in this traversable collection of numbers of type `Int`. Instead of `Int`, any other type `T` with an implicit `Numeric[T]` implementation can be used as element type of the traversable collection and as result type of `sum`. Examples of such types are: `Long`, `Float`, `Double`, `BigInt`.

    Definition Classes
      TraversableOnce → GenTraversableOnce
    Full Signature

    #### def sum[B >: A](implicit num: Numeric[B]): B

89. #### def tail: Repr

    Selects all elements except the first.

    Selects all elements except the first.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    returns

      a traversable collection consisting of all elements of this traversable collection except the first one.

    Definition Classes
      TraversableLike → GenTraversableLike
    Exceptions thrown
      `UnsupportedOperationException`

      if the traversable collection is empty.

90. #### def tails: Iterator[Repr]

    Iterates over the tails of this traversable collection.

    Iterates over the tails of this traversable collection. The first value will be this traversable collection and the final one will be an empty traversable collection, with the intervening values the results of successive applications of `tail`.

    returns

      an iterator over all the tails of this traversable collection

    Example:

    1. `List(1,2,3).tails = Iterator(List(1,2,3), List(2,3), List(3), Nil)`

91. #### def take(n: Int): Repr

    Selects first n elements.

    Selects first n elements.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    n

      the number of elements to take from this traversable collection.

    returns

      a traversable collection consisting only of the first `n` elements of this traversable collection, or else the whole traversable collection, if it has less than `n` elements.

    Definition Classes
      TraversableLike → GenTraversableLike

92. #### def takeWhile(p: (A) ⇒ Boolean): Repr

    Takes longest prefix of elements that satisfy a predicate.

    Takes longest prefix of elements that satisfy a predicate.

    Note: might return different results for different runs, unless the underlying collection type is ordered.

    returns

      the longest prefix of this traversable collection whose elements all satisfy the predicate `p`.

    Definition Classes
      TraversableLike → GenTraversableLike

93. #### def thisCollection: Traversable[A]

    The underlying collection seen as an instance of `Traversable`.

    The underlying collection seen as an instance of `Traversable`. By default this is implemented as the current collection object itself, but this can be overridden.

    Attributes
      protected[this]

94. #### def to[Col[_]]: Col[A]

    [use case] Converts this traversable collection into another by copying all elements.

    [use case]

    Converts this traversable collection into another by copying all elements.

    Note: will not terminate for infinite-sized collections.

    Col

      The collection type to build.

    returns

      a new collection containing all elements of this traversable collection.

    Definition Classes
      TraversableLike → TraversableOnce → GenTraversableOnce
    Full Signature

    #### def to[Col[_]](implicit cbf: CanBuildFrom[Nothing, A, Col[A]]): Col[A]

95. #### def toArray: Array[A]

    [use case] Converts this traversable collection to an array.

    [use case]

    Converts this traversable collection to an array.

    Note: will not terminate for infinite-sized collections.

    returns

      an array containing all elements of this traversable collection. An `ClassTag` must be available for the element type of this traversable collection.

    Definition Classes
      TraversableOnce → GenTraversableOnce
    Full Signature

    #### def toArray[B >: A](implicit arg0: ClassTag[B]): Array[B]

96. #### def toBuffer[B >: A]: Buffer[B]

    Converts this traversable collection to a mutable buffer.

    Converts this traversable collection to a mutable buffer.

    Note: will not terminate for infinite-sized collections.

    returns

      a buffer containing all elements of this traversable collection.

    Definition Classes
      TraversableOnce → GenTraversableOnce

97. #### def toCollection(repr: Repr): Traversable[A]

    A conversion from collections of type `Repr` to `Traversable` objects.

    A conversion from collections of type `Repr` to `Traversable` objects. By default this is implemented as just a cast, but this can be overridden.

    Attributes
      protected[this]

98. #### def toIndexedSeq: immutable.IndexedSeq[A]

    Converts this traversable collection to an indexed sequence.

    Converts this traversable collection to an indexed sequence.

    Note: will not terminate for infinite-sized collections.

    returns

      an indexed sequence containing all elements of this traversable collection.

    Definition Classes
      TraversableOnce → GenTraversableOnce

99. #### def toIterable: Iterable[A]

    Converts this traversable collection to an iterable collection.

    Converts this traversable collection to an iterable collection. Note that the choice of target `Iterable` is lazy in this default implementation as this `TraversableOnce` may be lazy and unevaluated (i.e. it may be an iterator which is only traversable once).

    Note: will not terminate for infinite-sized collections.

    returns

      an `Iterable` containing all elements of this traversable collection.

    Definition Classes
      TraversableOnce → GenTraversableOnce

100. #### def toIterator: Iterator[A]

     Returns an Iterator over the elements in this traversable collection.

     Returns an Iterator over the elements in this traversable collection. Will return the same Iterator if this instance is already an Iterator.

     Note: will not terminate for infinite-sized collections.

     returns

       an Iterator containing all elements of this traversable collection.

     Definition Classes
       TraversableLike → GenTraversableOnce

101. #### def toList: List[A]

     Converts this traversable collection to a list.

     Converts this traversable collection to a list.

     Note: will not terminate for infinite-sized collections.

     returns

       a list containing all elements of this traversable collection.

     Definition Classes
       TraversableOnce → GenTraversableOnce

102. #### def toMap[T, U]: Map[T, U]

     [use case] Converts this traversable collection to a map.

     [use case]

     Converts this traversable collection to a map. This method is unavailable unless the elements are members of Tuple2, each ((T, U)) becoming a key-value pair in the map. Duplicate keys will be overwritten by later keys: if this is an unordered collection, which key is in the resulting map is undefined.

     Note: will not terminate for infinite-sized collections.

     returns

       a map of type `immutable.Map[T, U]` containing all key/value pairs of type `(T, U)` of this traversable collection.

     Definition Classes
       TraversableOnce → GenTraversableOnce
     Full Signature

     #### def toMap[T, U](implicit ev: <:<[A, (T, U)]): immutable.Map[T, U]

103. #### def toParArray: ParArray[A]

     Implicit information
       This member is added by an implicit conversion from TraversableLike[A, Repr] to TraversableOps[A] performed by method traversable2ops in scala.collection.parallel.
     Definition Classes
       TraversableOps

104. #### def toSeq: Seq[A]

     Converts this traversable collection to a sequence.

     Converts this traversable collection to a sequence. As with `toIterable`, it's lazy in this default implementation, as this `TraversableOnce` may be lazy and unevaluated.

     Note: will not terminate for infinite-sized collections.

     returns

       a sequence containing all elements of this traversable collection.

     Definition Classes
       TraversableOnce → GenTraversableOnce

105. #### def toSet[B >: A]: immutable.Set[B]

     Converts this traversable collection to a set.

     Converts this traversable collection to a set.

     Note: will not terminate for infinite-sized collections.

     returns

       a set containing all elements of this traversable collection.

     Definition Classes
       TraversableOnce → GenTraversableOnce

106. #### def toStream: Stream[A]

     Converts this traversable collection to a stream.

     Converts this traversable collection to a stream.

     Note: will not terminate for infinite-sized collections.

     returns

       a stream containing all elements of this traversable collection.

     Definition Classes
       TraversableLike → GenTraversableOnce

107. #### def toString(): String

     Converts this traversable collection to a string.

     Converts this traversable collection to a string.

     returns

       a string representation of this collection. By default this string consists of the `stringPrefix` of this traversable collection, followed by all elements separated by commas and enclosed in parentheses.

     Definition Classes
       TraversableLike → Any

108. #### def toTraversable: Traversable[A]

     Converts this traversable collection to an unspecified Traversable.

     Converts this traversable collection to an unspecified Traversable. Will return the same collection if this instance is already Traversable.

     Note: will not terminate for infinite-sized collections.

     returns

       a Traversable containing all elements of this traversable collection.

     Definition Classes
       TraversableLike → TraversableOnce → GenTraversableOnce

109. #### def toVector: Vector[A]

     Converts this traversable collection to a Vector.

     Converts this traversable collection to a Vector.

     Note: will not terminate for infinite-sized collections.

     returns

       a vector containing all elements of this traversable collection.

     Definition Classes
       TraversableOnce → GenTraversableOnce

110. #### def view(from: Int, until: Int): TraversableView[A, Repr]

     Creates a non-strict view of a slice of this traversable collection.

     Creates a non-strict view of a slice of this traversable collection.

     Note: the difference between `view` and `slice` is that `view` produces a view of the current traversable collection, whereas `slice` produces a new traversable collection.

     Note: `view(from, to)` is equivalent to `view.slice(from, to)`

     Note: might return different results for different runs, unless the underlying collection type is ordered.

     from

       the index of the first element of the view

     until

       the index of the element following the view

     returns

       a non-strict view of a slice of this traversable collection, starting at index `from` and extending up to (but not including) index `until`.

111. #### def view: TraversableView[A, Repr]

     Creates a non-strict view of this traversable collection.

     Creates a non-strict view of this traversable collection.

     returns

       a non-strict view of this traversable collection.

112. #### def withFilter(p: (A) ⇒ Boolean): FilterMonadic[A, Repr]

     Creates a non-strict filter of this traversable collection.

     Creates a non-strict filter of this traversable collection.

     Note: the difference between `c filter p` and `c withFilter p` is that the former creates a new collection, whereas the latter only restricts the domain of subsequent `map`, `flatMap`, `foreach`, and `withFilter` operations.

     Note: might return different results for different runs, unless the underlying collection type is ordered.

     p

       the predicate used to test elements.

     returns

       an object of class `WithFilter`, which supports `map`, `flatMap`, `foreach`, and `withFilter` operations. All these operations apply to those elements of this traversable collection which satisfy the predicate `p`.

     Definition Classes
       TraversableLike → FilterMonadic

113. #### def →[B](y: B): (TraversableLike[A, Repr], B)

     Implicit information
       This member is added by an implicit conversion from TraversableLike[A, Repr] to ArrowAssoc[TraversableLike[A, Repr]] performed by method any2ArrowAssoc in scala.Predef.
     Definition Classes
       ArrowAssoc

### Shadowed Implict Value Members

1. #### def filter(p: (A) ⇒ Boolean): TraversableOnce[A]

   Implicit information
     This member is added by an implicit conversion from TraversableLike[A, Repr] to MonadOps[A] performed by method MonadOps in scala.collection.TraversableOnce.
   Shadowing
     This implicitly inherited member is shadowed by one or more members in this class.
     To access this member you can use a type ascription:

         (traversableLike: MonadOps[A]).filter(p)

   Definition Classes
     MonadOps

2. #### def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): TraversableOnce[B]

   Implicit information
     This member is added by an implicit conversion from TraversableLike[A, Repr] to MonadOps[A] performed by method MonadOps in scala.collection.TraversableOnce.
   Shadowing
     This implicitly inherited member is shadowed by one or more members in this class.
     To access this member you can use a type ascription:

         (traversableLike: MonadOps[A]).flatMap(f)

   Definition Classes
     MonadOps

3. #### def map[B](f: (A) ⇒ B): TraversableOnce[B]

   Implicit information
     This member is added by an implicit conversion from TraversableLike[A, Repr] to MonadOps[A] performed by method MonadOps in scala.collection.TraversableOnce.
   Shadowing
     This implicitly inherited member is shadowed by one or more members in this class.
     To access this member you can use a type ascription:

         (traversableLike: MonadOps[A]).map(f)

   Definition Classes
     MonadOps

4. #### val self: Any

   Implicit information
     This member is added by an implicit conversion from TraversableLike[A, Repr] to StringAdd performed by method any2stringadd in scala.Predef.
   Shadowing
     This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
     To access this member you can use a type ascription:

         (traversableLike: StringAdd).self

   Definition Classes
     StringAdd

5. #### val self: Any

   Implicit information
     This member is added by an implicit conversion from TraversableLike[A, Repr] to StringFormat performed by method any2stringfmt in scala.Predef.
   Shadowing
     This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
     To access this member you can use a type ascription:

         (traversableLike: StringFormat).self

   Definition Classes
     StringFormat

6. #### def withFilter(p: (A) ⇒ Boolean): Iterator[A]

   Implicit information
     This member is added by an implicit conversion from TraversableLike[A, Repr] to MonadOps[A] performed by method MonadOps in scala.collection.TraversableOnce.
   Shadowing
     This implicitly inherited member is shadowed by one or more members in this class.
     To access this member you can use a type ascription:

         (traversableLike: MonadOps[A]).withFilter(p)

   Definition Classes
     MonadOps

### Deprecated Value Members

1. #### def /:\[A1 >: A](z: A1)(op: (A1, A1) ⇒ A1): A1

   A syntactic sugar for out of order folding.

   A syntactic sugar for out of order folding. See `fold`.

   Example:

       scala> val a = LinkedList(1,2,3,4)
       a: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2, 3, 4)

       scala> val b = (a /:\ 5)(_+_)
       b: Int = 15

   Definition Classes
     GenTraversableOnce
   Annotations
     @deprecated
   Deprecated

     (Since version 2.10.0) use fold instead

2. #### def x: TraversableLike[A, Repr]

   Implicit information
     This member is added by an implicit conversion from TraversableLike[A, Repr] to ArrowAssoc[TraversableLike[A, Repr]] performed by method any2ArrowAssoc in scala.Predef.
   Shadowing
     This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
     To access this member you can use a type ascription:

         (traversableLike: ArrowAssoc[TraversableLike[A, Repr]]).x

   Definition Classes
     ArrowAssoc
   Annotations
     @deprecated
   Deprecated

     (Since version 2.10.0) Use `leftOfArrow`instead``

3. #### def x: TraversableLike[A, Repr]

   Implicit information
     This member is added by an implicit conversion from TraversableLike[A, Repr] to Ensuring[TraversableLike[A, Repr]] performed by method any2Ensuring in scala.Predef.
   Shadowing
     This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
     To access this member you can use a type ascription:

         (traversableLike: Ensuring[TraversableLike[A, Repr]]).x

   Definition Classes
     Ensuring
   Annotations
     @deprecated
   Deprecated

     (Since version 2.10.0) Use `resultOfEnsuring`instead``

### Inherited from GenTraversableLike[A, Repr]

### Inherited from Parallelizable[A, ParIterable[A]]

### Inherited from TraversableOnce[A]

### Inherited from GenTraversableOnce[A]

### Inherited from FilterMonadic[A, Repr]

### Inherited from HasNewBuilder[A, Repr]

### Inherited from Any

### Inherited by implicit conversion traversable2ops from TraversableLike[A, Repr] to TraversableOps[A]

### Inherited by implicit conversion MonadOps from TraversableLike[A, Repr] to MonadOps[A]

### Inherited by implicit conversion any2stringadd from TraversableLike[A, Repr] to StringAdd

### Inherited by implicit conversion any2stringfmt from TraversableLike[A, Repr] to StringFormat

### Inherited by implicit conversion any2ArrowAssoc from TraversableLike[A, Repr] to ArrowAssoc[TraversableLike[A, Repr]]

### Inherited by implicit conversion any2Ensuring from TraversableLike[A, Repr] to Ensuring[TraversableLike[A, Repr]]

### Inherited by implicit conversion alternateImplicit from TraversableLike[A, Repr] to ForceImplicitAmbiguity

### Ungrouped