Iterablex

trait Iterablex

This trait provides additional methods on Iterable.

It is made public so that users can reuse the sameElementsAs method

Companion:
object
class Object
trait Matchable
class Any
object Iterablex.type

Extensions

Extensions

extension [T, S >: T](xs: Iterable[T])
def isSimilar(that: Iterable[S], f: (T, S) => Boolean): Boolean
Returns:

true if the 2 iterables contain the same elements, in the same order, according to a function f

extension [T](xs: Iterable[T])
def containsInOrder(l: T*): Boolean
Returns:

true if the second iterable elements are contained in the first, in order

def mapFirst(f: T => T): Seq[T]

map the first element with a function

map the first element with a function

def mapLast(f: T => T): Seq[T]

map the last element with a function

map the last element with a function

def rotate(n: Int): Iterable[T]
Returns:

a sequence rotated of a number of elements

def sameElementsAs(that: Iterable[T]): Boolean
Returns:

true if the 2 iterables contain the same elements recursively, in any order

def sameElementsAs(that: Iterable[T], f: (T, T) => Boolean): Boolean

This recursive function is not really well-formed (the asInstanceOf should be ample proof). It only works if T <===> Seq[T]

This recursive function is not really well-formed (the asInstanceOf should be ample proof). It only works if T <===> Seq[T]

This is the case for NodeFunctions.isEqualIgnoringSpace where it is used to check if 2 xml NodeSeqs have the same nodes regardless of whitespace

Returns:

true if the 2 iterables contain the same elements (according to a comparison function f) recursively, in any order

def scramble: Seq[T]
Returns:

a randomly mixed sequence

def scramble(random: Random): Seq[T]
Returns:

a randomly mixed sequence

def toDeepString: String
Returns:

the representation of the elements of the iterable using the toString method recursively