trait Slice[T] extends (Int) => T
Lazy and immutable slice of a sequence of values.
- T
type of the items of the sequence.
- Note
As the slice usually wraps over a mutable structure, like an array or a java buffer, and it DOES NOT make an instant copy, any changes to the underlying source will directly affect the slice output unless detached. Detach is a one-time copy operation, and
detached
property is preserved across all operations returning a Slice.
- Alphabetic
- By Inheritance
- Slice
- Function1
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def asArray: Array[T]
Returns a trimmed copy of an underlying array.
- abstract def asBuffer: Buffer[T]
Returns a buffer with a copy of this Slice.
- abstract def detach: Slice.this.type
Detaches a slice creating a trimmed copy of an underlying data, if needed.
Detaches a slice creating a trimmed copy of an underlying data, if needed. Subsequent detach operations will return the same instance without making new copies.
- abstract val length: Int
Returns length of the Slice.
- abstract def map[K](f: (T) => K): Slice[K]
Lazily composes mapping function and returns new Slice.
Lazily composes mapping function and returns new Slice. Does not modify nor copy underlying array.
- abstract def read(index: Int): T
Returns value at the given index without checks.
Returns value at the given index without checks.
- Attributes
- protected
- abstract def slice(from: Int, to: Int): Slice.this.type
Lazily narrows Slice to provided range.
- abstract def toBuffer[T1 >: T]: Buffer[T1]
Returns a buffer with a copy of this Slice.
- abstract def update[T1 >: T](index: Int, value: T1): Slice[T1]
Update a value at the given index.
Update a value at the given index. Creates a copy of an underlying data.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def andThen[A](g: (T) => A): (Int) => A
- Definition Classes
- Function1
- Annotations
- @unspecialized()
- final def apply(index: Int): T
Returns value at the given index.
Returns value at the given index.
- Definition Classes
- Slice → Function1
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- final def asIterable: Iterable[T]
Returns new iterable of Slice values.
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def compose[A](g: (A) => Int): (A) => T
- Definition Classes
- Function1
- Annotations
- @unspecialized()
- def copyToArray[T1 >: T](targetIndex: Int, targetArray: Array[T1]): Array[T1]
Dumps content to the array, starting from an index.
- final def count(pred: (T) => Boolean): Int
Counts values fulfilling the predicate.
- final def drop(n: Int): Slice.this.type
Lazily narrows Slice to exclude first N items.
Lazily narrows Slice to exclude first N items.
- Annotations
- @inline()
- final def dropRight(n: Int): Slice.this.type
Lazily narrows Slice to exclude last N items.
Lazily narrows Slice to exclude last N items.
- Annotations
- @inline()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def equals(obj: Any): Boolean
- Definition Classes
- Slice → AnyRef → Any
- final def exists(pred: (T) => Boolean): Boolean
Returns true if any value fulfills the predicate, or false.
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def find(pred: (T) => Boolean): Option[T]
Returns Some of the first value fulfilling the predicate, or None.
- final def fold(initial: T)(f: (T, T) => T): T
Combines from left to right all elements, starting with initial.
- final def foldLeft[R](initial: R)(f: (R, T) => R): R
Folds from left to right all elements, starting with initial.
- final def foldRight[R](initial: R)(f: (T, R) => R): R
Folds from right to left all elements, starting with initial.
- final def get(index: Int): Option[T]
Returns Some of the value at the index, or None if index outside of range.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def hashCode(): Int
- Definition Classes
- Slice → AnyRef → Any
- final def head: T
Returns first value in the Slice.
- final def headOption: Option[T]
Returns first value in the Slice.
- final def indexIterator(pred: (T) => Boolean): Iterator[Int]
Returns iterator over Slice indexes of values fulfilling the predicate.
- final def init: Slice.this.type
Returns the Slice without last value.
Returns the Slice without last value.
- Annotations
- @inline()
- final def isEmpty: Boolean
Returns true if Slice has values, otherwise false.
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def iterator(pred: (T) => Boolean): Iterator[T]
Returns iterator over Slice values fulfilling the predicate.
- final def iterator: Iterator[T]
Returns iterator over Slice values.
- final def last: T
Returns the last value in the Slice.
- final def lastOption: Option[T]
Returns the last value in the Slice.
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def nonEmpty: Boolean
Returns true if Slice has values, otherwise false.
Returns true if Slice has values, otherwise false.
- Annotations
- @inline()
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def reduce(f: (T, T) => T): T
Combines from right to left all elements.
- final def reverseIndexIterator(pred: (T) => Boolean): Iterator[Int]
Returns iterator over Slice indexes of values fulfilling the predicate, in the reverse order.
- final def reverseIterator(pred: (T) => Boolean): Iterator[T]
Returns iterator over Slice values fulfilling the predicate, in the reverse order.
- final def reverseIterator: Iterator[T]
Returns iterator over Slice values in the reverse order.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- final def tail: Slice.this.type
Returns the Slice without first value.
Returns the Slice without first value.
- Annotations
- @inline()
- final def take(n: Int): Slice.this.type
Lazily narrows Slice to first N items.
Lazily narrows Slice to first N items.
- Annotations
- @inline()
- final def takeRight(n: Int): Slice.this.type
Lazily narrows Slice to last N items.
Lazily narrows Slice to last N items.
- Annotations
- @inline()
- final def toArray[T1 >: T](implicit arg0: ClassTag[T1]): Array[T1]
Returns a trimmed copy of an underlying array.
- final def toList: List[T]
Returns new list of Slice values.
Returns new list of Slice values.
- Annotations
- @inline()
- final def toSeq: Seq[T]
Returns new sequence of Slice values.
Returns new sequence of Slice values.
- Annotations
- @inline()
- final def toString(): String
- Definition Classes
- Slice → Function1 → AnyRef → Any
- final def top: Int
Returns top index value (length-1).
Returns top index value (length-1).
- Annotations
- @inline()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()