MutableIndex

trait MutableIndex[T] extends Index[T]

An Index that contains an extra method: index that adds the given element (if necessary), returning its (possibly new) position in the index.

trait Index[T]
trait Serializable
trait T => Int
trait Iterable[T]
trait IterableOnce[T]
class Object
trait Matchable
class Any
class HashIndex[T]

Value members

Abstract methods

def index(t: T): Int

Returns an integer index for the given object, adding it to the index if it is not already present.

Returns an integer index for the given object, adding it to the index if it is not already present.

Inherited methods

final def ++[B >: T](suffix: IterableOnce[B]): Iterable[B]
Inherited from:
IterableOps
Inherited from:
IterableOnceOps
def andThen[A](g: Int => A): T => A
Inherited from:
Function1
def apply(t: T): Int

Returns the int id of the given element (0-based) or -1 if not found in the index. This method never changes the index (even in MutableIndex).

Returns the int id of the given element (0-based) or -1 if not found in the index. This method never changes the index (even in MutableIndex).

Inherited from:
Index
def collect[B](pf: PartialFunction[T, B]): Iterable[B]
Inherited from:
IterableOps
def collectFirst[B](pf: PartialFunction[T, B]): Option[B]
Inherited from:
IterableOnceOps
def compose[A](g: A => T): A => Int
Inherited from:
Function1
def concat[B >: T](suffix: IterableOnce[B]): Iterable[B]
Inherited from:
IterableOps
def contains(t: T): Boolean

Returns true if this index contains the element t.

Returns true if this index contains the element t.

Inherited from:
Index
def copyToArray[B >: T](xs: Array[B], start: Int, len: Int): Int
Inherited from:
IterableOnceOps
@deprecatedOverriding(message = "This should always forward to the 3-arg version of this method", since = "2.13.4")
def copyToArray[B >: T](xs: Array[B], start: Int): Int
Inherited from:
IterableOnceOps
@deprecatedOverriding(message = "This should always forward to the 3-arg version of this method", since = "2.13.4")
def copyToArray[B >: T](xs: Array[B]): Int
Inherited from:
IterableOnceOps
def corresponds[B](that: IterableOnce[B])(p: (T, B) => Boolean): Boolean
Inherited from:
IterableOnceOps
def count(p: T => Boolean): Int
Inherited from:
IterableOnceOps
def drop(n: Int): Iterable[T]
Inherited from:
IterableOps
def dropRight(n: Int): Iterable[T]
Inherited from:
IterableOps
def dropWhile(p: T => Boolean): Iterable[T]
Inherited from:
IterableOps
override def empty: Iterable[T]
override def equals(other: Any): Boolean
Definition Classes
Index -> Any
Inherited from:
Index
def exists(p: T => Boolean): Boolean
Inherited from:
IterableOnceOps
def filter(pred: T => Boolean): Iterable[T]
Inherited from:
IterableOps
def filterNot(pred: T => Boolean): Iterable[T]
Inherited from:
IterableOps
def find(p: T => Boolean): Option[T]
Inherited from:
IterableOnceOps
def flatMap[B](f: T => IterableOnce[B]): Iterable[B]
Inherited from:
IterableOps
def flatten[B](implicit asIterable: T => IterableOnce[B]): Iterable[B]
Inherited from:
IterableOps
def fold[A1 >: T](z: A1)(op: (A1, A1) => A1): A1
Inherited from:
IterableOnceOps
def foldLeft[B](z: B)(op: (B, T) => B): B
Inherited from:
IterableOnceOps
def foldRight[B](z: B)(op: (T, B) => B): B
Inherited from:
IterableOnceOps
def forall(p: T => Boolean): Boolean
Inherited from:
IterableOnceOps
def foreach[U](f: T => U): Unit
Inherited from:
IterableOnceOps
protected def fromSpecific(coll: IterableOnce[T]): Iterable[T]
def get(i: Int): T

Returns an object at the given position or throws IndexOutOfBoundsException if it's not found.

Returns an object at the given position or throws IndexOutOfBoundsException if it's not found.

Inherited from:
Index
def groupBy[K](f: T => K): Map[K, Iterable[T]]
Inherited from:
IterableOps
def groupMap[K, B](key: T => K)(f: T => B): Map[K, Iterable[B]]
Inherited from:
IterableOps
def groupMapReduce[K, B](key: T => K)(f: T => B)(reduce: (B, B) => B): Map[K, B]
Inherited from:
IterableOps
def grouped(size: Int): Iterator[Iterable[T]]
Inherited from:
IterableOps
override def hashCode: Int
Definition Classes
Index -> Any
Inherited from:
Index
def head: T
Inherited from:
IterableOps
Inherited from:
IterableOps
def indexOf(t: T): Int

Override Iterable's linear-scan indexOf to use our apply method.

Override Iterable's linear-scan indexOf to use our apply method.

Inherited from:
Index
def indexOpt(t: T): Option[Int]

Returns Some(i) if the object has been indexed, or None.

Returns Some(i) if the object has been indexed, or None.

Inherited from:
Index
def init: Iterable[T]
Inherited from:
IterableOps
Inherited from:
IterableOps
Inherited from:
IterableOnceOps
Definition Classes
Inherited from:
IterableOps
Inherited from:
IterableOnce
Inherited from:
IterableOnce
def last: T
Inherited from:
IterableOps
Inherited from:
IterableOps
def lazyZip[B](that: Iterable[B]): LazyZip2[T, B, MutableIndex[T]]
Inherited from:
Iterable
def map[B](f: T => B): Iterable[B]
Inherited from:
IterableOps
def max[B >: T](implicit ord: Ordering[B]): T
Inherited from:
IterableOnceOps
def maxBy[B](f: T => B)(implicit cmp: Ordering[B]): T
Inherited from:
IterableOnceOps
def maxByOption[B](f: T => B)(implicit cmp: Ordering[B]): Option[T]
Inherited from:
IterableOnceOps
def maxOption[B >: T](implicit ord: Ordering[B]): Option[T]
Inherited from:
IterableOnceOps
def min[B >: T](implicit ord: Ordering[B]): T
Inherited from:
IterableOnceOps
def minBy[B](f: T => B)(implicit cmp: Ordering[B]): T
Inherited from:
IterableOnceOps
def minByOption[B](f: T => B)(implicit cmp: Ordering[B]): Option[T]
Inherited from:
IterableOnceOps
def minOption[B >: T](implicit ord: Ordering[B]): Option[T]
Inherited from:
IterableOnceOps
final def mkString: String
Inherited from:
IterableOnceOps
final def mkString(sep: String): String
Inherited from:
IterableOnceOps
final def mkString(start: String, sep: String, end: String): String
Inherited from:
IterableOnceOps
protected def newSpecificBuilder: Builder[T, Iterable[T]]
@deprecatedOverriding(message = "nonEmpty is defined as !isEmpty; override isEmpty instead", since = "2.13.0")
Inherited from:
IterableOnceOps
def pairs: Iterator[(T, Int)]

Returns the indexed items along with their indicies

Returns the indexed items along with their indicies

Inherited from:
Index
def partition(p: T => Boolean): (Iterable[T], Iterable[T])
Inherited from:
IterableOps
def partitionMap[A1, A2](f: T => Either[A1, A2]): (Iterable[A1], Iterable[A2])
Inherited from:
IterableOps
def product[B >: T](implicit num: Numeric[B]): B
Inherited from:
IterableOnceOps
def reduce[B >: T](op: (B, B) => B): B
Inherited from:
IterableOnceOps
def reduceLeft[B >: T](op: (B, T) => B): B
Inherited from:
IterableOnceOps
def reduceLeftOption[B >: T](op: (B, T) => B): Option[B]
Inherited from:
IterableOnceOps
def reduceOption[B >: T](op: (B, B) => B): Option[B]
Inherited from:
IterableOnceOps
def reduceRight[B >: T](op: (T, B) => B): B
Inherited from:
IterableOnceOps
def reduceRightOption[B >: T](op: (T, B) => B): Option[B]
Inherited from:
IterableOnceOps
protected def reversed: Iterable[T]
Inherited from:
IterableOnceOps
def scan[B >: T](z: B)(op: (B, B) => B): Iterable[B]
Inherited from:
IterableOps
def scanLeft[B](z: B)(op: (B, T) => B): Iterable[B]
Inherited from:
IterableOps
def scanRight[B](z: B)(op: (T, B) => B): Iterable[B]
Inherited from:
IterableOps
def size: Int

Number of elements in this index.

Number of elements in this index.

Inherited from:
Index
def sizeCompare(that: Iterable[_]): Int
Inherited from:
IterableOps
def sizeCompare(otherSize: Int): Int
Inherited from:
IterableOps
Inherited from:
IterableOps
def slice(from: Int, until: Int): Iterable[T]
Inherited from:
IterableOps
def sliding(size: Int, step: Int): Iterator[Iterable[T]]
Inherited from:
IterableOps
def sliding(size: Int): Iterator[Iterable[T]]
Inherited from:
IterableOps
def span(p: T => Boolean): (Iterable[T], Iterable[T])
Inherited from:
IterableOps
override def splitAt(n: Int): (Iterable[T], Iterable[T])
Definition Classes
Inherited from:
IterableOps
def stepper[S <: Stepper[_]](implicit shape: StepperShape[T, S]): S
Inherited from:
IterableOnce
def sum[B >: T](implicit num: Numeric[B]): B
Inherited from:
IterableOnceOps
def tail: Iterable[T]
Inherited from:
IterableOps
Inherited from:
IterableOps
def take(n: Int): Iterable[T]
Inherited from:
IterableOps
def takeRight(n: Int): Iterable[T]
Inherited from:
IterableOps
def takeWhile(p: T => Boolean): Iterable[T]
Inherited from:
IterableOps
override def tapEach[U](f: T => U): Iterable[T]
Definition Classes
Inherited from:
IterableOps
def to[C1](factory: Factory[T, C1]): C1
Inherited from:
IterableOnceOps
def toArray[B >: T : ClassTag]: Array[B]
Inherited from:
IterableOnceOps
final def toBuffer[B >: T]: Buffer[B]
Inherited from:
IterableOnceOps
def toList: List[T]
Inherited from:
IterableOnceOps
def toMap[K, V](implicit ev: T <:< (K, V)): Map[K, V]
Inherited from:
IterableOnceOps
def toSeq: Seq[T]
Inherited from:
IterableOnceOps
def toSet[B >: T]: Set[B]
Inherited from:
IterableOnceOps
override def toString: String
Definition Classes
Index -> Function1 -> Iterable -> Any
Inherited from:
Index
Inherited from:
IterableOnceOps
def transpose[B](implicit asIterable: T => Iterable[B]): Iterable[Iterable[B]]
Inherited from:
IterableOps
def unapply(i: Int): Option[T]

Returns Some(t) if this int corresponds to some object, and None otherwise.

Returns Some(t) if this int corresponds to some object, and None otherwise.

Inherited from:
Index
def unzip[A1, A2](implicit asPair: T => (A1, A2)): (Iterable[A1], Iterable[A2])
Inherited from:
IterableOps
def unzip3[A1, A2, A3](implicit asTriple: T => (A1, A2, A3)): (Iterable[A1], Iterable[A2], Iterable[A3])
Inherited from:
IterableOps
def view: View[T]
Inherited from:
IterableOps
Inherited from:
IterableOps
def zip[B](that: IterableOnce[B]): Iterable[(T, B)]
Inherited from:
IterableOps
def zipAll[A1 >: T, B](that: Iterable[B], thisElem: A1, thatElem: B): Iterable[(A1, B)]
Inherited from:
IterableOps
Inherited from:
IterableOps
def |[U](right: Index[U]): EitherIndex[T, U]
Inherited from:
Index

Deprecated and Inherited methods

@deprecated(message = "Use ++ instead of ++: for collections of type Iterable", since = "2.13.0")
def ++:[B >: T](that: IterableOnce[B]): Iterable[B]
Deprecated
[Since version 2.13.0] Use ++ instead of ++: for collections of type Iterable
Inherited from:
IterableOps
@inline @deprecated(message = "Use foldLeft instead of /:", since = "2.13.0")
final def /:[B](z: B)(op: (B, T) => B): B
Deprecated
[Since version 2.13.0] Use foldLeft instead of /:
Inherited from:
IterableOnceOps
@inline @deprecated(message = "Use foldRight instead of :\\", since = "2.13.0")
final def :\[B](z: B)(op: (T, B) => B): B
Deprecated
[Since version 2.13.0] Use foldRight instead of :\\
Inherited from:
IterableOnceOps
@deprecated(message = "`aggregate` is not relevant for sequential collections. Use `foldLeft(z)(seqop)` instead.", since = "2.13.0")
def aggregate[B](z: => B)(seqop: (B, T) => B, combop: (B, B) => B): B
Deprecated
[Since version 2.13.0] `aggregate` is not relevant for sequential collections. Use `foldLeft(z)(seqop)` instead.
Inherited from:
IterableOnceOps
@inline @deprecatedOverriding(message = "Use iterableFactory instead", since = "2.13.0") @deprecated(message = "Use iterableFactory instead", since = "2.13.0")
Deprecated
[Since version 2.13.0] Use iterableFactory instead
Inherited from:
IterableOps
@inline @deprecated(message = "Use `dest ++= coll` instead", since = "2.13.0")
final def copyToBuffer[B >: T](dest: Buffer[B]): Unit
Deprecated
[Since version 2.13.0] Use `dest ++= coll` instead
Inherited from:
IterableOnceOps
@deprecated(message = "Check .knownSize instead of .hasDefiniteSize for more actionable information (see scaladoc for details)", since = "2.13.0")
Deprecated
[Since version 2.13.0] Check .knownSize instead of .hasDefiniteSize for more actionable information (see scaladoc for details)
Inherited from:
IterableOnceOps
@deprecated(message = "Use coll instead of repr in a collection implementation, use the collection value itself from the outside", since = "2.13.0")
final def repr: Iterable[T]
Deprecated
[Since version 2.13.0] Use coll instead of repr in a collection implementation, use the collection value itself from the outside
Inherited from:
IterableOps
@deprecated(message = "Iterable.seq always returns the iterable itself", since = "2.13.0")
Deprecated
[Since version 2.13.0] Iterable.seq always returns the iterable itself
Inherited from:
Iterable
@deprecated(message = "toIterable is internal and will be made protected; its name is similar to `toList` or `toSeq`, but it doesn\'t copy non-immutable collections", since = "2.13.7")
final def toIterable: MutableIndex[T]
Deprecated
[Since version 2.13.7] toIterable is internal and will be made protected; its name is similar to `toList` or `toSeq`, but it doesn\'t copy non-immutable collections
Inherited from:
Iterable
@inline @deprecated(message = "Use .iterator instead of .toIterator", since = "2.13.0")
final def toIterator: Iterator[T]
Deprecated
[Since version 2.13.0] Use .iterator instead of .toIterator
Inherited from:
IterableOnceOps
@inline @deprecated(message = "Use .to(LazyList) instead of .toStream", since = "2.13.0")
final def toStream: Stream[T]
Deprecated
[Since version 2.13.0] Use .to(LazyList) instead of .toStream
Inherited from:
IterableOnceOps
@deprecated(message = "toTraversable is internal and will be made protected; its name is similar to `toList` or `toSeq`, but it doesn\'t copy non-immutable collections", since = "2.13.0")
final def toTraversable: Iterable[T]
Deprecated
[Since version 2.13.0] toTraversable is internal and will be made protected; its name is similar to `toList` or `toSeq`, but it doesn\'t copy non-immutable collections
Inherited from:
IterableOps
@deprecated(message = "Use .view.slice(from, until) instead of .view(from, until)", since = "2.13.0")
def view(from: Int, until: Int): View[T]
Deprecated
[Since version 2.13.0] Use .view.slice(from, until) instead of .view(from, until)
Inherited from:
IterableOps