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

Extensions

Extensions

extension (xs: Iterable[T])
def isSimilar[T, S >: T](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 (xs: Iterable[T])
def containsInOrder[T](l: T*): Boolean
Returns

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

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

map the first element with a function

map the first element with a function

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

map the last element with a function

map the last element with a function

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

a sequence rotated of a number of elements

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

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

def sameElementsAs[T](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[T]: Seq[T]
Returns

a randomly mixed sequence

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

a randomly mixed sequence

def toDeepString[T]: String
Returns

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