scala.collection

trait SeqProxyLike

[source: scala/collection/SeqProxyLike.scala]

trait SeqProxyLike[+A, +This <: SeqLike[A, This] with Seq[A]]
extends SeqLike[A, This] with IterableProxyLike[A, This]
This trait implements a proxy for sequences. It forwards all calls to a different sequence.
Author
Martin Odersky
Version
2.8
Since
2.8
Direct Known Subclasses:
SeqProxy

Method Summary
override def apply (idx : Int) : A
Returns the elements at position `idx`
override def contains (elem : Any) : Boolean
Tests if the given value elem is a member of this sequence.
override def containsSlice [B](that : Seq[B]) : Boolean
Is that a slice in this?
override def diff [B >: A, That](that : Seq[B]) : This
override def endsWith [B](that : Seq[B]) : Boolean
override def equalsWith [B](that : Seq[B])(f : (A, B) => Boolean) : Boolean
override def findIndexOf (p : (A) => Boolean) : Int
Returns index of the first element satisying a predicate, or -1.
override def findLastIndexOf (p : (A) => Boolean) : Int
Returns index of the last element satisying a predicate, or -1.
override def indexOf [B >: A](elem : B, from : Int) : Int
Returns the index of the first occurence of the specified object in this sequence, starting from a start index, or -1, if none exists.
override def indexOf [B >: A](elem : B) : Int
Returns the index of the first occurence of the specified object in this sequence.
override def indexOfSeq [B >: A](that : Seq[B]) : Int
override def indexWhere (p : (A) => Boolean) : Int
Returns index of the first element satisfying a predicate, or -1, if none exists.
override def indexWhere (p : (A) => Boolean, from : Int) : Int
Returns index of the first element starting from a start index satisying a predicate, or -1, if none exists.
override def indices : Range
The range of all indices of this sequence.
override def intersect [B >: A, That](that : Seq[B]) : This
override def isDefinedAt (x : Int) : Boolean
Is this partial function defined for the index x?
override def lastIndexOf [B >: A](elem : B, end : Int) : Int
Returns the index of the last occurence of the specified element in this sequence before or at a given end index, or -1 if the sequence does not contain this element.
override def lastIndexOf [B >: A](elem : B) : Int
Returns the index of the last occurence of the specified element in this sequence, or -1 if the sequence does not contain this element.
override def lastIndexWhere (p : (A) => Boolean, end : Int) : Int
Returns index of the last element not exceeding a given end index and satisying a predicate, or -1 if none exists.
override def lastIndexWhere (p : (A) => Boolean) : Int
Returns index of the last element satisying a predicate, or -1, if none exists.
override def length : Int
Returns the length of the sequence.
override def lengthCompare (len : Int) : Int
Result of comparing length with operand len. returns x where x < 0 iff this.length < len x == 0 iff this.length == len x > 0 iff this.length > len. The method as implemented here does not call length directly; its running time is O(length min len) instead of O(length). The method should be overwritten if computing length is cheap.
override def padTo [B >: A, That](len : Int, elem : B)(implicit bf : CanBuildFrom[This, B, That]) : That
Returns a new sequence of given length containing the elements of this sequence followed by zero or more occurrences of given elements.
override def patch [B >: A, That](from : Int, patch : Seq[B], replaced : Int)(implicit bf : CanBuildFrom[This, B, That]) : That
A new sequence, consisting of all elements of current sequence except that `replaced` elements starting from `from` are replaced by `patch`.
override def prefixLength (p : (A) => Boolean) : Int
Returns length of longest prefix of this seqence such that every element of the prefix satisfies predicate `p`.
override def removeDuplicates : This
Builds a new sequence from this sequence in which any duplicates (wrt to ==) removed. Among duplicate elements, only the first one is retained in the result sequence
override def reverse : This
A sequence of type C consisting of all elements of this sequence in reverse order.
override def reverseIterator : Iterator[A]
The elements of this sequence in reversed order
override def segmentLength (p : (A) => Boolean, from : Int) : Int
Returns length of longest segment starting from a start index `from` such that every element of the segment satisfies predicate `p`.
override def size : Int
Should always be length
override def startsWith [B](that : Seq[B], offset : Int) : Boolean
Checks whether the argument sequence is contained at the specified index within the receiver object. If the both the receiver object, this and the argument, that are infinite sequences this method may not terminate.
override def startsWith [B](that : Seq[B]) : Boolean
Check whether the receiver object starts with the argument sequence.
override def union [B >: A, That](that : Seq[B])(implicit bf : CanBuildFrom[This, B, That]) : That
override def view : SeqView[A, This]
Creates a view of this iterable @see IterableView
override def view (from : Int, until : Int) : SeqView[A, This]
A sub-iterable view starting at index `from` and extending up to (but not including) index `until`.
Methods inherited from IterableProxyLike
iterator, foreach, isEmpty, foldRight, reduceRight, toIterable, zip, zipAll, zipWithIndex, head, takeRight, dropRight, sameElements, toStream
Methods inherited from TraversableProxyLike
self (abstract), nonEmpty, hasDefiniteSize, ++, ++, map, flatMap, filter, filterNot, remove, partition, groupBy, forall, exists, count, find, foldLeft, /:, :\, reduceLeft, reduceLeftOption, reduceRightOption, headOption, tail, last, lastOption, init, take, drop, slice, takeWhile, dropWhile, span, splitAt, copyToBuffer, copyToArray, copyToArray, toArray, toList, toSeq, toSet, mkString, mkString, mkString, addString, addString, addString, stringPrefix
Methods inherited from Proxy
hashCode, equals, toString
Methods inherited from SeqLike
thisCollection, toCollection, reverseMap, reversedElements, indexOfSeq, lastIndexOfSeq, lastIndexOfSeq, updated, +:, :+, sortWith, sortWith, sortBy, projection
Methods inherited from IterableLike
elements, canEqual, first, firstOption
Methods inherited from TraversableLike
newBuilder (abstract), repr, 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
override def length : Int
Returns the length of the sequence.
Overrides
SeqLike.length

override def apply(idx : Int) : A
Returns the elements at position `idx`
Overrides
SeqLike.apply

override def lengthCompare(len : Int) : Int
Result of comparing length with operand len. returns x where x < 0 iff this.length < len x == 0 iff this.length == len x > 0 iff this.length > len. The method as implemented here does not call length directly; its running time is O(length min len) instead of O(length). The method should be overwritten if computing length is cheap.
Overrides
SeqLike.lengthCompare

override def size : Int
Should always be length
Overrides
SeqLike.size

override def isDefinedAt(x : Int) : Boolean
Is this partial function defined for the index x?
Overrides
SeqLike.isDefinedAt

override def segmentLength(p : (A) => Boolean, from : Int) : Int
Returns length of longest segment starting from a start index `from` such that every element of the segment satisfies predicate `p`.
Notes
may not terminate for infinite-sized collections.
Parameters
p - the predicate
from - the start index
Overrides
SeqLike.segmentLength

override def prefixLength(p : (A) => Boolean) : Int
Returns length of longest prefix of this seqence such that every element of the prefix satisfies predicate `p`.
Notes
may not terminate for infinite-sized collections.
Parameters
p - the predicate
Overrides
SeqLike.prefixLength

override def indexWhere(p : (A) => Boolean) : Int
Returns index of the first element satisfying a predicate, or -1, if none exists.
Notes
may not terminate for infinite-sized collections.
Parameters
p - the predicate
Overrides
SeqLike.indexWhere

override def indexWhere(p : (A) => Boolean, from : Int) : Int
Returns index of the first element starting from a start index satisying a predicate, or -1, if none exists.
Notes
may not terminate for infinite-sized collections.
Parameters
p - the predicate
from - the start index
Overrides
SeqLike.indexWhere

override def findIndexOf(p : (A) => Boolean) : Int
Returns index of the first element satisying a predicate, or -1.
Overrides
SeqLike.findIndexOf

override def indexOf[B >: A](elem : B) : Int
Returns the index of the first occurence of the specified object in this sequence.
Notes
may not terminate for infinite-sized collections.
Parameters
elem - element to search for.
Returns
the index in this sequence of the first occurence of the specified element, or -1 if the sequence does not contain this element.
Overrides
SeqLike.indexOf

override def indexOf[B >: A](elem : B, from : Int) : Int
Returns the index of the first occurence of the specified object in this sequence, starting from a start index, or -1, if none exists.
Notes
may not terminate for infinite-sized collections.
Parameters
elem - element to search for.
Overrides
SeqLike.indexOf

override def lastIndexOf[B >: A](elem : B) : Int
Returns the index of the last occurence of the specified element in this sequence, or -1 if the sequence does not contain this element.
Parameters
elem - element to search for.
Returns
the index in this sequence of the last occurence of the specified element, or -1 if the sequence does not contain this element.
Overrides
SeqLike.lastIndexOf

override def lastIndexOf[B >: A](elem : B, end : Int) : Int
Returns the index of the last occurence of the specified element in this sequence before or at a given end index, or -1 if the sequence does not contain this element.
Parameters
elem - element to search for.
end - the end index
Overrides
SeqLike.lastIndexOf

override def lastIndexWhere(p : (A) => Boolean) : Int
Returns index of the last element satisying a predicate, or -1, if none exists.
Parameters
p - the predicate
Returns
the index of the last element satisfying p, or -1 if such an element does not exist
Overrides
SeqLike.lastIndexWhere

override def lastIndexWhere(p : (A) => Boolean, end : Int) : Int
Returns index of the last element not exceeding a given end index and satisying a predicate, or -1 if none exists.
Parameters
end - the end index
p - the predicate
Overrides
SeqLike.lastIndexWhere

override def reverse : This
A sequence of type C consisting of all elements of this sequence in reverse order.
Overrides
SeqLike.reverse

override def reverseIterator : Iterator[A]
The elements of this sequence in reversed order
Overrides
SeqLike.reverseIterator

override def startsWith[B](that : Seq[B], offset : Int) : Boolean
Checks whether the argument sequence is contained at the specified index within the receiver object. If the both the receiver object, this and the argument, that are infinite sequences this method may not terminate.
Returns
true if that is contained in this, at the specified index, otherwise false
See Also
String.startsWith
Overrides
SeqLike.startsWith

override def startsWith[B](that : Seq[B]) : Boolean
Check whether the receiver object starts with the argument sequence.
Returns
true if that is a prefix of this, otherwise false
Overrides
SeqLike.startsWith

override def endsWith[B](that : Seq[B]) : Boolean
Returns
true if this sequence end with that sequence
See Also
String.endsWith
Overrides
SeqLike.endsWith

override def indexOfSeq[B >: A](that : Seq[B]) : Int
Returns
-1 if that not contained in this, otherwise the first index where that is contained.
Overrides
SeqLike.indexOfSeq

override def contains(elem : Any) : Boolean
Tests if the given value elem is a member of this sequence.
Parameters
elem - element whose membership has to be tested.
Returns
true iff there is an element of this sequence which is equal (w.r.t. ==) to elem.
Overrides
SeqLike.contains

override def union[B >: A, That](that : Seq[B])(implicit bf : CanBuildFrom[This, B, That]) : That

Computes the multiset union of this sequence and the given sequence that. For example:

      val xs = List(1, 1, 2)
      val ys = List(1, 2, 2, 3)
      println(xs union ys)  // prints "List(1, 1, 2, 1, 2, 2, 3)"
      println(ys union xs)  // prints "List(1, 2, 2, 3, 1, 1, 2)"
    
Parameters
that - the sequence of elements to add to the sequence.
Returns
a sequence containing the elements of this sequence and those of the given sequence that.
Overrides
SeqLike.union

override def diff[B >: A, That](that : Seq[B]) : This

Computes the multiset difference between this sequence and the given sequence that. If an element appears more than once in both sequences, the difference contains m copies of that element, where m is the difference between the number of times the element appears in this sequence and the number of times it appears in that. For example:

      val xs = List(1, 1, 2)
      val ys = List(1, 2, 2, 3)
      println(xs diff ys)  // prints "List(1)"
      println(xs -- ys)    // prints "List()"
    
Parameters
that - the sequence of elements to remove from this sequence.
Returns
the sequence of elements contained only in this sequence plus m copies of each element present in both sequences, where m is defined as above.
Overrides
SeqLike.diff

override def intersect[B >: A, That](that : Seq[B]) : This

Computes the multiset intersection between this sequence and the given sequence that; the intersection contains m copies of an element contained in both sequences, where m is the smaller of the number of times the element appears in this sequence or in that. For example:

      val xs = List(1, 1, 2)
      val ys = List(3, 2, 2, 1)
      println(xs intersect ys)  // prints "List(1, 2)"
      println(ys intersect xs)  // prints "List(2, 1)"
    
Parameters
that - the sequence to intersect.
Returns
the sequence of elements contained both in this sequence and in the given sequence that.
Overrides
SeqLike.intersect

override def removeDuplicates : This
Builds a new sequence from this sequence in which any duplicates (wrt to ==) removed. Among duplicate elements, only the first one is retained in the result sequence
Overrides
SeqLike.removeDuplicates

override def patch[B >: A, That](from : Int, patch : Seq[B], replaced : Int)(implicit bf : CanBuildFrom[This, B, That]) : That
A new sequence, consisting of all elements of current sequence except that `replaced` elements starting from `from` are replaced by `patch`.
Overrides
SeqLike.patch

override def padTo[B >: A, That](len : Int, elem : B)(implicit bf : CanBuildFrom[This, B, That]) : That
Returns a new sequence of given length containing the elements of this sequence followed by zero or more occurrences of given elements.
Overrides
SeqLike.padTo

override def indices : Range
The range of all indices of this sequence.
Overrides
SeqLike.indices

override def view : SeqView[A, This]
Creates a view of this iterable @see IterableView
Overrides
SeqLike.view, IterableProxyLike.view

override def view(from : Int, until : Int) : SeqView[A, This]
A sub-iterable view 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 iterable, whereas `slice` produces a new iterable.
Might return different results for different runs, unless this iterable is ordered
view(from, to) is equivalent to view.slice(from, to)
Overrides
SeqLike.view, IterableProxyLike.view

override def findLastIndexOf(p : (A) => Boolean) : Int
Returns index of the last element satisying a predicate, or -1.
Overrides
SeqLike.findLastIndexOf

override def equalsWith[B](that : Seq[B])(f : (A, B) => Boolean) : Boolean
Overrides
SeqLike.equalsWith

override def containsSlice[B](that : Seq[B]) : Boolean
Is that a slice in this?
Overrides
SeqLike.containsSlice