scala.collection

trait TraversableProxyLike

[source: scala/collection/TraversableProxyLike.scala]

trait TraversableProxyLike[+A, +This <: TraversableLike[A, This] with Traversable[A]]
extends TraversableLike[A, This] with Proxy
This trait implements a proxy for traversable objects. It forwards all calls to a different traversable object
Author
Martin Odersky
Version
2.8
Since
2.8
Direct Known Subclasses:
IterableProxyLike, TraversableProxy

Method Summary
override def ++ [B >: A, That](that : Traversable[B])(implicit bf : CanBuildFrom[This, B, That]) : That
Creates a new traversable of type `That` which contains all elements of this traversable followed by all elements of another traversable.
override def ++ [B >: A, That](that : Iterator[B])(implicit bf : CanBuildFrom[This, B, That]) : That
Creates a new traversable of type `That` which contains all elements of this traversable followed by all elements of an iterator.
override def /: [B](z : B)(op : (B, A) => B) : B
Similar to foldLeft but can be used as an operator with the order of traversable and zero arguments reversed. That is, z /: xs is the same as xs foldLeft z
override def :\ [B](z : B)(op : (A, B) => B) : B
An alias for foldRight. That is, xs :\ z is the same as xs foldRight z
override def addString (b : StringBuilder) : StringBuilder
Write all elements of this string into given string builder without using any separator between consecutive elements.
override def addString (b : StringBuilder, start : java.lang.String, sep : java.lang.String, end : java.lang.String) : StringBuilder
Write all elements of this traversable into given string builder. The written text begins with the string start and is finished by the string end. Inside, the string representations of elements (w.r.t. the method toString()) are separated by the string sep.
override def addString (b : StringBuilder, sep : java.lang.String) : StringBuilder
Write all elements of this string into given string builder. The string representations of elements (w.r.t. the method toString()) are separated by the string sep.
override def copyToArray [B >: A](xs : Array[B], start : Int) : Unit
Fills the given array xs with the elements of this traversable starting at position start until either the end of the current traversable or the end of array `xs` is reached.
override def copyToArray [B >: A](xs : Array[B], start : Int, len : Int) : Unit
Fills the given array xs with at most `len` elements of this traversable starting at position `start`. Copying will stop once either the end of the current traversable is reached or `len` elements have been copied or the end of the array is reached.
override def copyToBuffer [B >: A](dest : Buffer[B]) : Unit
Copy all elements of this traversable to a given buffer
override def count (p : (A) => Boolean) : Int
Count the number of elements in the traversable which satisfy a predicate.
override def drop (n : Int) : This
Returns this traversable without its n first elements If this traversable has less than n elements, the empty traversable is returned.
override def dropWhile (p : (A) => Boolean) : This
Returns the longest suffix of this traversable whose first element does not satisfy the predicate p.
override def exists (p : (A) => Boolean) : Boolean
Return true iff there is an element in this traversable for which the given predicate `p` yields true.
override def filter (p : (A) => Boolean) : This
Returns all the elements of this traversable that satisfy the predicate p. The order of the elements is preserved.
override def filterNot (p : (A) => Boolean) : This
Returns a traversable with all elements of this traversable which do not satisfy the predicate p.
override def find (p : (A) => Boolean) : Option[A]
Find and return the first element of the traversable object satisfying a predicate, if any.
override def flatMap [B, That](f : (A) => Traversable[B])(implicit bf : CanBuildFrom[This, B, That]) : That
Applies the given function f to each element of this traversable, then concatenates the results in a traversable of type That.
override def foldLeft [B](z : B)(op : (B, A) => B) : B
Combines the elements of this traversable object together using the binary function f, from left to right, and starting with the value z.
override def foldRight [B](z : B)(op : (A, B) => B) : B
Combines the elements of this traversable together using the binary function f, from right to left, and starting with the value z.
override def forall (p : (A) => Boolean) : Boolean
Return true iff the given predicate `p` yields true for all elements of this traversable.
override def foreach [B](f : (A) => B) : Unit
Apply a function f to all elements of this traversable object.
override def groupBy [K](f : (A) => K) : Map[K, This]
Partition this traversable into a map of traversables according to some discriminator function. @invariant (xs partition f)(k) = xs filter (x => f(x) == k)
override def hasDefiniteSize : Boolean
Returns true if this collection is known to have finite size. This is the case if the collection type is strict, or if the collection type is non-strict (e.g. it's a Stream), but all collection elements have been computed. Many methods in this trait will not work on collections of infinite sizes.
override def head : A
The first element of this traversable.
override def headOption : Option[A]
Returns as an option the first element of this traversable or None if traversable is empty.
override def init : This
a traversable consisting of all elements of this traversable except the last one.
override def isEmpty : Boolean
Does this collection contain no elements?
override def last : A
The last element of this traversable.
override def lastOption : Option[A]
Returns as an option the last element of this traversable or None if traversable is empty.
override def map [B, That](f : (A) => B)(implicit bf : CanBuildFrom[This, B, That]) : That
Returns the traversable that results from applying the given function f to each element of this traversable and collecting the results in a traversable of type `That`.
override def mkString (sep : java.lang.String) : java.lang.String
Returns a string representation of this traversable object. The string representations of elements (w.r.t. the method toString()) are separated by the string sep.
override def mkString (start : java.lang.String, sep : java.lang.String, end : java.lang.String) : java.lang.String
Returns a string representation of this traversable object. The resulting string begins with the string start and is finished by the string end. Inside, the string representations of elements (w.r.t. the method toString()) are separated by the string sep.
override def mkString : java.lang.String
Returns a string representation of this traversable object. The string representations of elements (w.r.t. the method toString()) follow each other without any separator string.
override def nonEmpty : Boolean
Does this collection contain some elements?
override def partition (p : (A) => Boolean) : (This, This)
Partitions this traversable in two traversables according to a predicate.
override def reduceLeft [B >: A](op : (B, A) => B) : B
Combines the elements of this traversable object together using the binary operator op, from left to right
override def reduceLeftOption [B >: A](op : (B, A) => B) : Option[B]
Combines the elements of this traversable object together using the binary operator op, from left to right
override def reduceRight [B >: A](op : (A, B) => B) : B
Combines the elements of this traversable object together using the binary operator op, from right to left
override def reduceRightOption [B >: A](op : (A, B) => B) : Option[B]
Combines the elements of this traversable object together using the binary operator op, from right to left.
override def remove (p : (A) => Boolean) : This
Returns a traversable with all elements of this traversable which do not satisfy the predicate p.
abstract def self : This
override def size : Int
The number of elements in this collection
override def slice (from : Int, until : Int) : This
A sub-traversable starting at index `from` and extending up to (but not including) index `until`.
override def span (p : (A) => Boolean) : (This, This)
Returns a pair consisting of the longest prefix of the traversable whose elements all satisfy the given predicate, and the rest of the traversable.
override def splitAt (n : Int) : (This, This)
Split the traversable at a given point and return the two parts thus created.
override def stringPrefix : java.lang.String
Defines the prefix of this object's toString representation.
override def tail : This
a traversable consisting of all elements of this traversable except the first one.
override def take (n : Int) : This
Return a traversable consisting only of the first n elements of this traversable, or else the whole traversable, if it has less than n elements.
override def takeWhile (p : (A) => Boolean) : This
Returns the longest prefix of this traversable whose elements satisfy the predicate p.
override def toArray [B >: A](implicit evidence$1 : ClassManifest[B]) : Array[B]
Converts this traversable to a fresh Array containing all elements.
override def toIterable : Iterable[A]
Returns a traversable with all elements in this traversable object.
override def toList : List[A]
Returns a list with all elements of this traversable object.
override def toSeq : Seq[A]
Returns a sequence with all elements in this traversable object.
override def toSet [B >: A] : Set[B]
Returns an immutable set with all unique elements in this traversable object.
override def toStream : Stream[A]
Returns a stream with all elements in this traversable object.
override def view (from : Int, until : Int) : TraversableView[A, This]
A sub-traversable starting at index `from` and extending up to (but not including) index `until`.
override def view : TraversableView[A, This]
Creates a view of this traversable @see TraversableView
Methods inherited from Proxy
hashCode, equals, toString
Methods inherited from TraversableLike
newBuilder (abstract), repr, thisCollection, toCollection, partialMap, sum, product, min, max, toIndexedSeq, withFilter
Methods inherited from AnyRef
getClass, clone, notify, notifyAll, wait, wait, wait, finalize, ==, !=, eq, ne, synchronized
Methods inherited from Any
==, !=, isInstanceOf, asInstanceOf
Method Details
abstract def self : This
Overrides
Proxy.self

override def foreach[B](f : (A) => B) : Unit
Apply a function f to all elements of this traversable object.
Parameters
f - A function that is applied for its side-effect to every element. The result (of arbitrary type U) of function `f` is discarded.
Notes
This method underlies the implementation of most other bulk operations. It's important to implement this method in an efficient way.
Overrides
TraversableLike.foreach

override def isEmpty : Boolean
Does this collection contain no elements?
Overrides
TraversableLike.isEmpty

override def nonEmpty : Boolean
Does this collection contain some elements?
Overrides
TraversableLike.nonEmpty

override def size : Int
The number of elements in this collection
Overrides
TraversableLike.size

override def hasDefiniteSize : Boolean
Returns true if this collection is known to have finite size. This is the case if the collection type is strict, or if the collection type is non-strict (e.g. it's a Stream), but all collection elements have been computed. Many methods in this trait will not work on collections of infinite sizes.
Overrides
TraversableLike.hasDefiniteSize

override def ++[B >: A, That](that : Traversable[B])(implicit bf : CanBuildFrom[This, B, That]) : That
Creates a new traversable of type `That` which contains all elements of this traversable followed by all elements of another traversable.
Parameters
that - The traversable to append
Overrides
TraversableLike.++

override def ++[B >: A, That](that : Iterator[B])(implicit bf : CanBuildFrom[This, B, That]) : That
Creates a new traversable of type `That` which contains all elements of this traversable followed by all elements of an iterator.
Parameters
that - The iterator to append
Overrides
TraversableLike.++

override def map[B, That](f : (A) => B)(implicit bf : CanBuildFrom[This, B, That]) : That
Returns the traversable that results from applying the given function f to each element of this traversable and collecting the results in a traversable of type `That`.
Parameters
f - function to apply to each element.
Overrides
TraversableLike.map

override def flatMap[B, That](f : (A) => Traversable[B])(implicit bf : CanBuildFrom[This, B, That]) : That
Applies the given function f to each element of this traversable, then concatenates the results in a traversable of type That.
Parameters
f - the function to apply on each element.
Overrides
TraversableLike.flatMap

override def filter(p : (A) => Boolean) : This
Returns all the elements of this traversable that satisfy the predicate p. The order of the elements is preserved.
Parameters
p - the predicate used to filter the traversable.
Returns
the elements of this traversable satisfying p.
Overrides
TraversableLike.filter

override def filterNot(p : (A) => Boolean) : This
Returns a traversable with all elements of this traversable which do not satisfy the predicate p.
Parameters
p - the predicate used to test elements
Returns
the traversable without all elements that satisfy p
Overrides
TraversableLike.filterNot

override def remove(p : (A) => Boolean) : This
Returns a traversable with all elements of this traversable which do not satisfy the predicate p.
Parameters
p - the predicate used to test elements
Returns
the traversable without all elements that satisfy p
Overrides
TraversableLike.remove

override def partition(p : (A) => Boolean) : (This, This)
Partitions this traversable in two traversables according to a predicate.
Parameters
p - the predicate on which to partition
Returns
a pair of traversables: the traversable that satisfies the predicate p and the traversable that does not. The relative order of the elements in the resulting traversables is the same as in the original traversable.
Overrides
TraversableLike.partition

override def groupBy[K](f : (A) => K) : Map[K, This]
Partition this traversable into a map of traversables according to some discriminator function. @invariant (xs partition f)(k) = xs filter (x => f(x) == k)
Notes
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 collection.
Overrides
TraversableLike.groupBy

override def forall(p : (A) => Boolean) : Boolean
Return true iff the given predicate `p` yields true for all elements of this traversable.
Notes
May not terminate for infinite-sized collections.
Parameters
p - the predicate
Overrides
TraversableLike.forall

override def exists(p : (A) => Boolean) : Boolean
Return true iff there is an element in this traversable for which the given predicate `p` yields true.
Notes
May not terminate for infinite-sized collections.
Parameters
p - the predicate
Overrides
TraversableLike.exists

override def count(p : (A) => Boolean) : Int
Count the number of elements in the traversable which satisfy a predicate.
Notes
Will not terminate for infinite-sized collections.
Parameters
p - the predicate for which to count
Returns
the number of elements satisfying the predicate p.
Overrides
TraversableLike.count

override def find(p : (A) => Boolean) : Option[A]
Find and return the first element of the traversable object satisfying a predicate, if any.
Notes
may not terminate for infinite-sized collections.
Might return different results for different runs, unless this traversable is ordered.
Parameters
p - the predicate
Returns
an option containing the first element in the traversable object satisfying p, or None if none exists.
Overrides
TraversableLike.find

override def foldLeft[B](z : B)(op : (B, A) => B) : B
Combines the elements of this traversable object together using the binary function f, from left to right, and starting with the value z.
Notes
Will not terminate for infinite-sized collections.
Might return different results for different runs, unless this traversable is ordered, or the operator is associative and commutative.
Returns
f(... (f(f(z, a0), a1) ...), an) if the traversable is [a0, a1, ..., an].
Overrides
TraversableLike.foldLeft

override def /:[B](z : B)(op : (B, A) => B) : B
Similar to foldLeft but can be used as an operator with the order of traversable and zero arguments reversed. That is, z /: xs is the same as xs foldLeft z
Notes
Will not terminate for infinite-sized collections.
Might return different results for different runs, unless this traversable is ordered, or the operator is associative and commutative.
Overrides
TraversableLike./:

override def foldRight[B](z : B)(op : (A, B) => B) : B
Combines the elements of this traversable together using the binary function f, from right to left, and starting with the value z.
Notes
Will not terminate for infinite-sized collections.
Might return different results for different runs, unless this traversable is ordered, or the operator is associative and commutative.
Returns
f(a0, f(a1, f(..., f(an, z)...))) if the traversable is [a0, a1, ..., an].
Overrides
TraversableLike.foldRight

override def :\[B](z : B)(op : (A, B) => B) : B
An alias for foldRight. That is, xs :\ z is the same as xs foldRight z
Notes
Will not terminate for infinite-sized collections.
Might return different results for different runs, unless this traversable is ordered, or the operator is associative and commutative.
Overrides
TraversableLike.:\

override def reduceLeft[B >: A](op : (B, A) => B) : B
Combines the elements of this traversable object together using the binary operator op, from left to right
Notes
Will not terminate for infinite-sized collections.
Might return different results for different runs, unless this traversable is ordered, or the operator is associative and commutative.
Parameters
op - The operator to apply
Returns
op(... op(a0,a1), ..., an) if the traversable object has elements a0, a1, ..., an.
Throws
Predef.UnsupportedOperationException - if the traversable object is empty.
Overrides
TraversableLike.reduceLeft

override def reduceLeftOption[B >: A](op : (B, A) => B) : Option[B]
Combines the elements of this traversable object together using the binary operator op, from left to right
Notes
Will not terminate for infinite-sized collections.
Might return different results for different runs, unless this traversable is ordered, or the operator is associative and commutative.
Parameters
op - The operator to apply
Returns
If the traversable is non-empty, the result of the operations as an Option, otherwise None.
Overrides
TraversableLike.reduceLeftOption

override def reduceRight[B >: A](op : (A, B) => B) : B
Combines the elements of this traversable object together using the binary operator op, from right to left
Notes
Will not terminate for infinite-sized collections.
Might return different results for different runs, unless this traversable is ordered, or the operator is associative and commutative.
Parameters
op - The operator to apply
Returns
a0 op (... op (an-1 op an)...) if the traversable object has elements a0, a1, ..., an.
Throws
Predef.UnsupportedOperationException - if the iterator is empty.
Overrides
TraversableLike.reduceRight

override def reduceRightOption[B >: A](op : (A, B) => B) : Option[B]
Combines the elements of this traversable object together using the binary operator op, from right to left.
Notes
Will not terminate for infinite-sized collections.
Might return different results for different runs, unless this traversable is ordered, or the operator is associative and commutative.
Parameters
op - The operator to apply
Returns
If the traversable is non-empty, the result of the operations as an Option, otherwise None.
Overrides
TraversableLike.reduceRightOption

override def head : A
The first element of this traversable.
Notes
Might return different results for different runs, unless this traversable is ordered
Throws
Predef.NoSuchElementException - if the traversable is empty.
Overrides
TraversableLike.head

override def headOption : Option[A]
Returns as an option the first element of this traversable or None if traversable is empty.
Notes
Might return different results for different runs, unless this traversable is ordered
Overrides
TraversableLike.headOption

override def tail : This
a traversable consisting of all elements of this traversable except the first one.
Notes
Might return different results for different runs, unless this traversable is ordered
Overrides
TraversableLike.tail

override def last : A
The last element of this traversable.
Throws
Predef.NoSuchElementException - if the traversable is empty.
Notes
Might return different results for different runs, unless this traversable is ordered
Overrides
TraversableLike.last

override def lastOption : Option[A]
Returns as an option the last element of this traversable or None if traversable is empty.
Returns
the last element as an option.
Notes
Might return different results for different runs, unless this traversable is ordered
Overrides
TraversableLike.lastOption

override def init : This
a traversable consisting of all elements of this traversable except the last one.
Throws
Predef.UnsupportedOperationException - if the stream is empty.
Notes
Might return different results for different runs, unless this traversable is ordered
Overrides
TraversableLike.init

override def take(n : Int) : This
Return a traversable consisting only of the first n elements of this traversable, or else the whole traversable, if it has less than n elements.
Parameters
n - the number of elements to take
Notes
Might return different results for different runs, unless this traversable is ordered
Overrides
TraversableLike.take

override def drop(n : Int) : This
Returns this traversable without its n first elements If this traversable has less than n elements, the empty traversable is returned.
Parameters
n - the number of elements to drop
Returns
the new traversable
Notes
Might return different results for different runs, unless this traversable is ordered
Overrides
TraversableLike.drop

override def slice(from : Int, until : Int) : This
A sub-traversable starting at index `from` and extending up to (but not including) index `until`.
Notes
c.slice(from, to) is equivalent to (but possibly more efficient than) c.drop(from).take(to - from)
Might return different results for different runs, unless this traversable is ordered
Parameters
from - The index of the first element of the returned subsequence
until - The index of the element following the returned subsequence
Overrides
TraversableLike.slice

override def takeWhile(p : (A) => Boolean) : This
Returns the longest prefix of this traversable whose elements satisfy the predicate p.
Parameters
p - the test predicate.
Notes
Might return different results for different runs, unless this traversable is ordered
Overrides
TraversableLike.takeWhile

override def dropWhile(p : (A) => Boolean) : This
Returns the longest suffix of this traversable whose first element does not satisfy the predicate p.
Parameters
p - the test predicate.
Notes
Might return different results for different runs, unless this traversable is ordered
Overrides
TraversableLike.dropWhile

override def span(p : (A) => Boolean) : (This, This)
Returns a pair consisting of the longest prefix of the traversable whose elements all satisfy the given predicate, and the rest of the traversable.
Parameters
p - the test predicate
Returns
a pair consisting of the longest prefix of the traversable whose elements all satisfy p, and the rest of the traversable.
Notes
Might return different results for different runs, unless this traversable is ordered
Overrides
TraversableLike.span

override def splitAt(n : Int) : (This, This)
Split the traversable at a given point and return the two parts thus created.
Parameters
n - the position at which to split
Returns
a pair of traversables composed of the first n elements, and the other elements.
Notes
Might return different results for different runs, unless this traversable is ordered
Overrides
TraversableLike.splitAt

override def copyToBuffer[B >: A](dest : Buffer[B]) : Unit
Copy all elements of this traversable to a given buffer
Notes
Will not terminate for infinite-sized collections.
Parameters
dest - The buffer to which elements are copied
Overrides
TraversableLike.copyToBuffer

override def copyToArray[B >: A](xs : Array[B], start : Int, len : Int) : Unit
Fills the given array xs with at most `len` elements of this traversable starting at position `start`. Copying will stop once either the end of the current traversable is reached or `len` elements have been copied or the end of the array is reached.
Notes
Will not terminate for infinite-sized collections.
Parameters
xs - the array to fill.
start - starting index.
len - number of elements to copy
Overrides
TraversableLike.copyToArray

override def copyToArray[B >: A](xs : Array[B], start : Int) : Unit
Fills the given array xs with the elements of this traversable starting at position start until either the end of the current traversable or the end of array `xs` is reached.
Notes
Will not terminate for infinite-sized collections.
Parameters
xs - the array to fill.
start - starting index.
Precondition
the array must be large enough to hold all elements.
Overrides
TraversableLike.copyToArray

override def toArray[B >: A](implicit evidence$1 : ClassManifest[B]) : Array[B]
Converts this traversable to a fresh Array containing all elements.
Notes
Will not terminate for infinite-sized collections.
Overrides
TraversableLike.toArray

override def toList : List[A]
Returns a list with all elements of this traversable object.
Notes
Will not terminate for infinite-sized collections.
Overrides
TraversableLike.toList

override def toIterable : Iterable[A]
Returns a traversable with all elements in this traversable object.
Notes
Will not terminate for infinite-sized collections.
Overrides
TraversableLike.toIterable

override def toSeq : Seq[A]
Returns a sequence with all elements in this traversable object.
Notes
Will not terminate for infinite-sized collections.
Overrides
TraversableLike.toSeq

override def toStream : Stream[A]
Returns a stream with all elements in this traversable object.
Overrides
TraversableLike.toStream

override def toSet[B >: A] : Set[B]
Returns an immutable set with all unique elements in this traversable object.
Overrides
TraversableLike.toSet

override def mkString(start : java.lang.String, sep : java.lang.String, end : java.lang.String) : java.lang.String
Returns a string representation of this traversable object. The resulting string begins with the string start and is finished by the string end. Inside, the string representations of elements (w.r.t. the method toString()) are separated by the string sep.
Examples
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
Parameters
start - starting string.
sep - separator string.
end - ending string.
Returns
a string representation of this traversable object.
Overrides
TraversableLike.mkString

override def mkString(sep : java.lang.String) : java.lang.String
Returns a string representation of this traversable object. The string representations of elements (w.r.t. the method toString()) are separated by the string sep.
Parameters
sep - separator string.
Returns
a string representation of this traversable object.
Overrides
TraversableLike.mkString

override def mkString : java.lang.String
Returns a string representation of this traversable object. The string representations of elements (w.r.t. the method toString()) follow each other without any separator string.
Overrides
TraversableLike.mkString

override def addString(b : StringBuilder, start : java.lang.String, sep : java.lang.String, end : java.lang.String) : StringBuilder
Write all elements of this traversable into given string builder. The written text begins with the string start and is finished by the string end. Inside, the string representations of elements (w.r.t. the method toString()) are separated by the string sep.
Overrides
TraversableLike.addString

override def addString(b : StringBuilder, sep : java.lang.String) : StringBuilder
Write all elements of this string into given string builder. The string representations of elements (w.r.t. the method toString()) are separated by the string sep.
Overrides
TraversableLike.addString

override def addString(b : StringBuilder) : StringBuilder
Write all elements of this string into given string builder without using any separator between consecutive elements.
Overrides
TraversableLike.addString

override def stringPrefix : java.lang.String
Defines the prefix of this object's toString representation.
Overrides
TraversableLike.stringPrefix

override def view : TraversableView[A, This]
Creates a view of this traversable @see TraversableView
Overrides
TraversableLike.view

override def view(from : Int, until : Int) : TraversableView[A, This]
A sub-traversable starting at index `from` and extending up to (but not including) index `until`.
Parameters
from - The index of the first element of the slice
until - The index of the element following the slice
Notes
The difference between `view` and `slice` is that `view` produces a view of the current traversable, whereas `slice` produces a new traversable.
Might return different results for different runs, unless this traversable is ordered
view(from, to) is equivalent to view.slice(from, to)
Overrides
TraversableLike.view