A non-empty list: an ordered, immutable, non-empty collection of elements with LinearSeq performance characteristics.
The purpose of NonEmptyVector is to allow you to express in a type that a Vector is non-empty, thereby eliminating the
need for (and potential exception from) a run-time check for non-emptiness. For a non-empty sequence with IndexedSeq
performance, see Every.
== Constructing NonEmptyVectors ==
You can construct a NonEmptyVector by passing one or more elements to the NonEmptyVector.apply factory method:
scala> NonEmptyVector(1, 2, 3) res0: org.scalactic.anyvals.NonEmptyVector[Int] = NonEmptyVector(1, 2, 3)
Alternatively you can cons elements onto the End singleton object, similar to making a Vector starting with Nil:
scala> 1 :: 2 :: 3 :: Nil res0: Vector[Int] = Vector(1, 2, 3) scala> 1 :: 2 :: 3 :: End res1: org.scalactic.NonEmptyVector[Int] = NonEmptyVector(1, 2, 3)
Note that although Nil is a Vector[Nothing], End is
not a NonEmptyVector[Nothing], because no empty NonEmptyVector exists. (A non-empty list is a series
of connected links; if you have no links, you have no non-empty list.)
scala> val nil: Vector[Nothing] = Nil
nil: Vector[Nothing] = Vector()
scala> val nada: NonEmptyVector[Nothing] = End
<console>:16: error: type mismatch;
found : org.scalactic.anyvals.End.type
required: org.scalactic.anyvals.NonEmptyVector[Nothing]
val nada: NonEmptyVector[Nothing] = End
^
== Working with NonEmptyVectors ==
NonEmptyVector does not extend Scala's Seq or Traversable traits because these require that
implementations may be empty. For example, if you invoke tail on a Seq that contains just one element,
you'll get an empty Seq:
scala> Vector(1).tail res6: Vector[Int] = Vector()
On the other hand, many useful methods exist on Seq that when invoked on a non-empty Seq are guaranteed
to not result in an empty Seq. For convenience, NonEmptyVector defines a method corresponding to every such Seq
method. Here are some examples:
NonEmptyVector(1, 2, 3).map(_ + 1) // Result: NonEmptyVector(2, 3, 4) NonEmptyVector(1).map(_ + 1) // Result: NonEmptyVector(2) NonEmptyVector(1, 2, 3).containsSlice(NonEmptyVector(2, 3)) // Result: true NonEmptyVector(1, 2, 3).containsSlice(NonEmptyVector(3, 4)) // Result: false NonEmptyVector(-1, -2, 3, 4, 5).minBy(_.abs) // Result: -1
NonEmptyVector does not currently define any methods corresponding to Seq methods that could result in
an empty Seq. However, an implicit converison from NonEmptyVector to Vector
is defined in the NonEmptyVector companion object that will be applied if you attempt to call one of the missing methods. As a
result, you can invoke filter on an NonEmptyVector, even though filter could result
in an empty sequence—but the result type will be Vector instead of NonEmptyVector:
NonEmptyVector(1, 2, 3).filter(_ < 10) // Result: Vector(1, 2, 3) NonEmptyVector(1, 2, 3).filter(_ > 10) // Result: Vector()
You can use NonEmptyVectors in for expressions. The result will be an NonEmptyVector unless
you use a filter (an if clause). Because filters are desugared to invocations of filter, the
result type will switch to a Vector at that point. Here are some examples:
scala> import org.scalactic.anyvals._
import org.scalactic.anyvals._
scala> for (i <- NonEmptyVector(1, 2, 3)) yield i + 1
res0: org.scalactic.anyvals.NonEmptyVector[Int] = NonEmptyVector(2, 3, 4)
scala> for (i <- NonEmptyVector(1, 2, 3) if i < 10) yield i + 1
res1: Vector[Int] = Vector(2, 3, 4)
scala> for {
| i <- NonEmptyVector(1, 2, 3)
| j <- NonEmptyVector('a', 'b', 'c')
| } yield (i, j)
res3: org.scalactic.anyvals.NonEmptyVector[(Int, Char)] =
NonEmptyVector((1,a), (1,b), (1,c), (2,a), (2,b), (2,c), (3,a), (3,b), (3,c))
scala> for {
| i <- NonEmptyVector(1, 2, 3) if i < 10
| j <- NonEmptyVector('a', 'b', 'c')
| } yield (i, j)
res6: Vector[(Int, Char)] =
Vector((1,a), (1,b), (1,c), (2,a), (2,b), (2,c), (3,a), (3,b), (3,c))
- Type parameters:
- T
the type of elements contained in this
NonEmptyVector
- Companion:
- object
- Source:
- NonEmptyVector.scala
Value members
Concrete methods
Returns a new NonEmptyVector containing the elements of this NonEmptyVector followed by the elements of the passed NonEmptyVector.
The element type of the resulting NonEmptyVector is the most specific superclass encompassing the element types of this and the passed NonEmptyVector.
Returns a new NonEmptyVector containing the elements of this NonEmptyVector followed by the elements of the passed NonEmptyVector.
The element type of the resulting NonEmptyVector is the most specific superclass encompassing the element types of this and the passed NonEmptyVector.
- Type parameters:
- U
the element type of the returned
NonEmptyVector
- Value parameters:
- other
the
NonEmptyVectorto append
- Returns:
a new
NonEmptyVectorthat contains all the elements of thisNonEmptyVectorfollowed by all elements ofother.- Source:
- NonEmptyVector.scala
Returns a new NonEmptyVector containing the elements of this NonEmptyVector followed by the elements of the passed Every.
The element type of the resulting NonEmptyVector is the most specific superclass encompassing the element types of this NonEmptyVector and the passed Every.
Returns a new NonEmptyVector containing the elements of this NonEmptyVector followed by the elements of the passed Every.
The element type of the resulting NonEmptyVector is the most specific superclass encompassing the element types of this NonEmptyVector and the passed Every.
- Type parameters:
- U
the element type of the returned
NonEmptyVector
- Value parameters:
- other
the
Everyto append
- Returns:
a new
NonEmptyVectorthat contains all the elements of thisNonEmptyVectorfollowed by all elements ofother.- Source:
- NonEmptyVector.scala
Returns a new NonEmptyVector containing the elements of this NonEmptyVector followed by the elements of the passed GenTraversableOnce.
The element type of the resulting NonEmptyVector is the most specific superclass encompassing the element types of this NonEmptyVector
and the passed GenTraversableOnce.
Returns a new NonEmptyVector containing the elements of this NonEmptyVector followed by the elements of the passed GenTraversableOnce.
The element type of the resulting NonEmptyVector is the most specific superclass encompassing the element types of this NonEmptyVector
and the passed GenTraversableOnce.
- Type parameters:
- U
the element type of the returned
NonEmptyVector
- Value parameters:
- other
the
GenTraversableOnceto append
- Returns:
a new
NonEmptyVectorthat contains all the elements of thisNonEmptyVectorfollowed by all elements ofother.- Source:
- NonEmptyVector.scala
Returns a new NonEmptyVector with the given element prepended.
Returns a new NonEmptyVector with the given element prepended.
Note that :-ending operators are right associative. A mnemonic for +: vs. :+ is: the COLon goes on the COLlection side.
- Value parameters:
- element
the element to prepend to this
NonEmptyVector
- Returns:
a new
NonEmptyVectorconsisting ofelementfollowed by all elements of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Returns a new NonEmptyVector with the given element appended.
Returns a new NonEmptyVector with the given element appended.
Note a mnemonic for +: vs. :+ is: the COLon goes on the COLlection side.
- Value parameters:
- element
the element to append to this
NonEmptyVector
- Returns:
a new
NonEmptyVectorconsisting of all elements of thisNonEmptyVectorfollowed byelement.- Source:
- NonEmptyVector.scala
Adds an element to the beginning of this NonEmptyVector.
Adds an element to the beginning of this NonEmptyVector.
Note that :-ending operators are right associative. A mnemonic for +: vs. :+ is: the COLon goes on the COLlection side.
- Value parameters:
- element
the element to prepend to this
NonEmptyVector
- Returns:
a
NonEmptyVectorthat containselementas first element and that continues with thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Appends all elements of this NonEmptyVector to a string builder. The written text will consist of a concatenation of the result of invoking toString
on of every element of this NonEmptyVector, without any separator string.
Appends all elements of this NonEmptyVector to a string builder. The written text will consist of a concatenation of the result of invoking toString
on of every element of this NonEmptyVector, without any separator string.
- Value parameters:
- sb
the string builder to which elements will be appended
- Returns:
the string builder,
sb, to which elements were appended.- Source:
- NonEmptyVector.scala
Appends all elements of this NonEmptyVector to a string builder using a separator string. The written text will consist of a concatenation of the
result of invoking toString
on of every element of this NonEmptyVector, separated by the string sep.
Appends all elements of this NonEmptyVector to a string builder using a separator string. The written text will consist of a concatenation of the
result of invoking toString
on of every element of this NonEmptyVector, separated by the string sep.
- Value parameters:
- sb
the string builder to which elements will be appended
- sep
the separator string
- Returns:
the string builder,
sb, to which elements were appended.- Source:
- NonEmptyVector.scala
Appends all elements of this NonEmptyVector to a string builder using start, end, and separator strings. The written text will consist of a concatenation of
the string start; the result of invoking toString on all elements of this NonEmptyVector,
separated by the string sep; and the string end
Appends all elements of this NonEmptyVector to a string builder using start, end, and separator strings. The written text will consist of a concatenation of
the string start; the result of invoking toString on all elements of this NonEmptyVector,
separated by the string sep; and the string end
- Value parameters:
- sb
the string builder to which elements will be appended
- sep
the separator string
- start
the ending string
- Returns:
the string builder,
sb, to which elements were appended.- Source:
- NonEmptyVector.scala
Selects an element by its index in the NonEmptyVector.
Selects an element by its index in the NonEmptyVector.
- Returns:
the element of this
NonEmptyVectorat indexidx, where 0 indicates the first element.- Source:
- NonEmptyVector.scala
Finds the first element of this NonEmptyVector for which the given partial function is defined, if any, and applies the partial function to it.
Finds the first element of this NonEmptyVector for which the given partial function is defined, if any, and applies the partial function to it.
- Value parameters:
- pf
the partial function
- Returns:
an
Optioncontainingpfapplied to the first element for which it is defined, orNoneif the partial function was not defined for any element.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector contains a given value as an element.
Indicates whether this NonEmptyVector contains a given value as an element.
- Value parameters:
- elem
the element to look for
- Returns:
true if this
NonEmptyVectorhas an element that is equal (as determined by==)toelem, false otherwise.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector contains a given GenSeq as a slice.
Indicates whether this NonEmptyVector contains a given GenSeq as a slice.
- Value parameters:
- that
the
GenSeqslice to look for
- Returns:
true if this
NonEmptyVectorcontains a slice with the same elements asthat, otherwisefalse.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector contains a given Every as a slice.
Indicates whether this NonEmptyVector contains a given Every as a slice.
- Value parameters:
- that
the
Everyslice to look for
- Returns:
true if this
NonEmptyVectorcontains a slice with the same elements asthat, otherwisefalse.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector contains a given NonEmptyVector as a slice.
Indicates whether this NonEmptyVector contains a given NonEmptyVector as a slice.
- Value parameters:
- that
the
NonEmptyVectorslice to look for
- Returns:
true if this
NonEmptyVectorcontains a slice with the same elements asthat, otherwisefalse.- Source:
- NonEmptyVector.scala
Copies values of this NonEmptyVector to an array. Fills the given array arr with values of this NonEmptyVector. Copying
will stop once either the end of the current NonEmptyVector is reached, or the end of the array is reached.
Copies values of this NonEmptyVector to an array. Fills the given array arr with values of this NonEmptyVector. Copying
will stop once either the end of the current NonEmptyVector is reached, or the end of the array is reached.
- Value parameters:
- arr
the array to fill
- Source:
- NonEmptyVector.scala
Copies values of this NonEmptyVector to an array. Fills the given array arr with values of this NonEmptyVector, beginning at
index start. Copying will stop once either the end of the current NonEmptyVector is reached, or the end of the array is reached.
Copies values of this NonEmptyVector to an array. Fills the given array arr with values of this NonEmptyVector, beginning at
index start. Copying will stop once either the end of the current NonEmptyVector is reached, or the end of the array is reached.
- Value parameters:
- arr
the array to fill
- start
the starting index
- Source:
- NonEmptyVector.scala
Copies values of this NonEmptyVector to an array. Fills the given array arr with at most len elements of this NonEmptyVector, beginning at
index start. Copying will stop once either the end of the current NonEmptyVector is reached, the end of the array is reached, or
len elements have been copied.
Copies values of this NonEmptyVector to an array. Fills the given array arr with at most len elements of this NonEmptyVector, beginning at
index start. Copying will stop once either the end of the current NonEmptyVector is reached, the end of the array is reached, or
len elements have been copied.
- Value parameters:
- arr
the array to fill
- len
the maximum number of elements to copy
- start
the starting index
- Source:
- NonEmptyVector.scala
Copies all elements of this NonEmptyVector to a buffer.
Copies all elements of this NonEmptyVector to a buffer.
- Value parameters:
- buf
the buffer to which elements are copied
- Source:
- NonEmptyVector.scala
Indicates whether every element of this NonEmptyVector relates to the corresponding element of a given GenSeq by satisfying a given predicate.
Indicates whether every element of this NonEmptyVector relates to the corresponding element of a given GenSeq by satisfying a given predicate.
- Type parameters:
- B
the type of the elements of
that
- Value parameters:
- p
the predicate, which relates elements from this
NonEmptyVectorand the passedGenSeq- that
the
GenSeqto compare for correspondence
- Returns:
true if this
NonEmptyVectorand the passedGenSeqhave the same length andp(x, y)istruefor all corresponding elementsxof thisNonEmptyVectorandyof that, otherwisefalse.- Source:
- NonEmptyVector.scala
Indicates whether every element of this NonEmptyVector relates to the corresponding element of a given Every by satisfying a given predicate.
Indicates whether every element of this NonEmptyVector relates to the corresponding element of a given Every by satisfying a given predicate.
- Type parameters:
- B
the type of the elements of
that
- Value parameters:
- p
the predicate, which relates elements from this
NonEmptyVectorand the passedEvery- that
the
Everyto compare for correspondence
- Returns:
true if this
NonEmptyVectorand the passedEveryhave the same length andp(x, y)istruefor all corresponding elementsxof thisNonEmptyVectorandyof that, otherwisefalse.- Source:
- NonEmptyVector.scala
Indicates whether every element of this NonEmptyVector relates to the corresponding element of a given NonEmptyVector by satisfying a given predicate.
Indicates whether every element of this NonEmptyVector relates to the corresponding element of a given NonEmptyVector by satisfying a given predicate.
- Type parameters:
- B
the type of the elements of
that
- Value parameters:
- p
the predicate, which relates elements from this and the passed
NonEmptyVector- that
the
NonEmptyVectorto compare for correspondence
- Returns:
true if this and the passed
NonEmptyVectorhave the same length andp(x, y)istruefor all corresponding elementsxof thisNonEmptyVectorandyof that, otherwisefalse.- Source:
- NonEmptyVector.scala
Counts the number of elements in this NonEmptyVector that satisfy a predicate.
Counts the number of elements in this NonEmptyVector that satisfy a predicate.
- Value parameters:
- p
the predicate used to test elements.
- Returns:
the number of elements satisfying the predicate
p.- Source:
- NonEmptyVector.scala
Builds a new NonEmptyVector from this NonEmptyVector without any duplicate elements.
Builds a new NonEmptyVector from this NonEmptyVector without any duplicate elements.
- Returns:
A new
NonEmptyVectorthat contains the first occurrence of every element of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector ends with the given GenSeq.
Indicates whether this NonEmptyVector ends with the given GenSeq.
- Value parameters:
- that
the sequence to test
- Returns:
trueif thisNonEmptyVectorhasthatas a suffix,falseotherwise.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector ends with the given Every.
Indicates whether this NonEmptyVector ends with the given Every.
- Value parameters:
- that
the
Everyto test
- Returns:
trueif thisNonEmptyVectorhasthatas a suffix,falseotherwise.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector ends with the given NonEmptyVector.
Indicates whether this NonEmptyVector ends with the given NonEmptyVector.
- Value parameters:
- that
the
NonEmptyVectorto test
- Returns:
trueif thisNonEmptyVectorhasthatas a suffix,falseotherwise.- Source:
- NonEmptyVector.scala
Indicates whether a predicate holds for at least one of the elements of this NonEmptyVector.
Indicates whether a predicate holds for at least one of the elements of this NonEmptyVector.
- Value parameters:
- the
predicate used to test elements.
- Returns:
trueif the given predicatepholds for some of the elements of thisNonEmptyVector, otherwisefalse.- Source:
- NonEmptyVector.scala
Finds the first element of this NonEmptyVector that satisfies the given predicate, if any.
Finds the first element of this NonEmptyVector that satisfies the given predicate, if any.
- Value parameters:
- p
the predicate used to test elements
- Returns:
an
Somecontaining the first element in thisNonEmptyVectorthat satisfiesp, orNoneif none exists.- Source:
- NonEmptyVector.scala
Builds a new NonEmptyVector by applying a function to all elements of this NonEmptyVector and using the elements of the resulting NonEmptyVectors.
Builds a new NonEmptyVector by applying a function to all elements of this NonEmptyVector and using the elements of the resulting NonEmptyVectors.
- Type parameters:
- U
the element type of the returned
NonEmptyVector
- Value parameters:
- f
the function to apply to each element.
- Returns:
a new
NonEmptyVectorcontaining elements obtained by applying the given functionfto each element of thisNonEmptyVectorand concatenating the elements of resultingNonEmptyVectors.- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector of NonEmptyVectors into a NonEmptyVector
formed by the elements of the nested NonEmptyVectors.
Converts this NonEmptyVector of NonEmptyVectors into a NonEmptyVector
formed by the elements of the nested NonEmptyVectors.
Note: You cannot use this flatten method on a NonEmptyVector that contains a GenTraversableOnces, because
if all the nested GenTraversableOnces were empty, you'd end up with an empty NonEmptyVector.
- Returns:
a new
NonEmptyVectorresulting from concatenating all nestedNonEmptyVectors.- Source:
- NonEmptyVector.scala
Folds the elements of this NonEmptyVector using the specified associative binary operator.
Folds the elements of this NonEmptyVector using the specified associative binary operator.
The order in which operations are performed on elements is unspecified and may be nondeterministic.
- Type parameters:
- U
a type parameter for the binary operator, a supertype of T.
- Value parameters:
- op
a binary operator that must be associative
- z
a neutral element for the fold operation; may be added to the result an arbitrary number of times, and must not change the result (e.g.,
Nilfor list concatenation, 0 for addition, or 1 for multiplication.)
- Returns:
the result of applying fold operator
opbetween all the elements andz- Source:
- NonEmptyVector.scala
Applies a binary operator to a start value and all elements of this NonEmptyVector, going left to right.
Applies a binary operator to a start value and all elements of this NonEmptyVector, going left to right.
- Type parameters:
- B
the result type of the binary operator.
- Value parameters:
- op
the binary operator.
- z
the start value.
- Returns:
the result of inserting
opbetween consecutive elements of thisNonEmptyVector, going left to right, with the start value,z, on the left:op(...op(op(z, x_1), x_2), ..., x_n)
where x1, ..., xn are the elements of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Applies a binary operator to all elements of this NonEmptyVector and a start value, going right to left.
Applies a binary operator to all elements of this NonEmptyVector and a start value, going right to left.
- Type parameters:
- B
the result of the binary operator
- Value parameters:
- op
the binary operator
- z
the start value
- Returns:
the result of inserting
opbetween consecutive elements of thisNonEmptyVector, going right to left, with the start value,z, on the right:op(x_1, op(x_2, ... op(x_n, z)...))
where x1, ..., xn are the elements of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Indicates whether a predicate holds for all elements of this NonEmptyVector.
Indicates whether a predicate holds for all elements of this NonEmptyVector.
- Value parameters:
- p
the predicate used to test elements.
- Returns:
trueif the given predicatepholds for all elements of thisNonEmptyVector, otherwisefalse.- Source:
- NonEmptyVector.scala
Applies a function f to all elements of this NonEmptyVector.
Applies a function f to all elements of this NonEmptyVector.
- Value parameters:
- f
the function that is applied for its side-effect to every element. The result of function
fis discarded.
- Source:
- NonEmptyVector.scala
Partitions this NonEmptyVector into a map of NonEmptyVectors according to some discriminator function.
Partitions this NonEmptyVector into a map of NonEmptyVectors according to some discriminator function.
- Type parameters:
- K
the type of keys returned by the discriminator function.
- Value parameters:
- f
the discriminator function.
- Returns:
A map from keys to
NonEmptyVectors such that the following invariant holds:(nonEmptyVector.toVector partition f)(k) = xs filter (x => f(x) == k)
That is, every key
kis bound to aNonEmptyVectorof those elementsxfor whichf(x)equalsk.- Source:
- NonEmptyVector.scala
Partitions elements into fixed size NonEmptyVectors.
Partitions elements into fixed size NonEmptyVectors.
- Value parameters:
- size
the number of elements per group
- Returns:
An iterator producing
NonEmptyVectors of sizesize, except the last will be truncated if the elements don't divide evenly.- Source:
- NonEmptyVector.scala
Returns true to indicate this NonEmptyVector has a definite size, since all NonEmptyVectors are strict collections.
Returns true to indicate this NonEmptyVector has a definite size, since all NonEmptyVectors are strict collections.
- Source:
- NonEmptyVector.scala
Selects the first element of this NonEmptyVector.
Selects the first element of this NonEmptyVector.
- Returns:
the first element of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Selects the first element of this NonEmptyVector and returns it wrapped in a Some.
Selects the first element of this NonEmptyVector and returns it wrapped in a Some.
- Returns:
the first element of this
NonEmptyVector, wrapped in aSome.- Source:
- NonEmptyVector.scala
Finds index of first occurrence of some value in this NonEmptyVector.
Finds index of first occurrence of some value in this NonEmptyVector.
- Value parameters:
- elem
the element value to search for.
- Returns:
the index of the first element of this
NonEmptyVectorthat is equal (as determined by==) toelem, or-1, if none exists.- Source:
- NonEmptyVector.scala
Finds index of first occurrence of some value in this NonEmptyVector after or at some start index.
Finds index of first occurrence of some value in this NonEmptyVector after or at some start index.
- Value parameters:
- elem
the element value to search for.
- from
the start index
- Returns:
the index
>=fromof the first element of thisNonEmptyVectorthat is equal (as determined by==) toelem, or-1, if none exists.- Source:
- NonEmptyVector.scala
Finds first index where this NonEmptyVector contains a given GenSeq as a slice.
Finds first index where this NonEmptyVector contains a given GenSeq as a slice.
- Value parameters:
- that
the
GenSeqdefining the slice to look for
- Returns:
the first index at which the elements of this
NonEmptyVectorstarting at that index match the elements ofGenSeqthat, or-1of no such subsequence exists.- Source:
- NonEmptyVector.scala
Finds first index after or at a start index where this NonEmptyVector contains a given GenSeq as a slice.
Finds first index after or at a start index where this NonEmptyVector contains a given GenSeq as a slice.
- Value parameters:
- from
the start index
- that
the
GenSeqdefining the slice to look for
- Returns:
the first index
>=fromat which the elements of thisNonEmptyVectorstarting at that index match the elements ofGenSeqthat, or-1of no such subsequence exists.- Source:
- NonEmptyVector.scala
Finds first index where this NonEmptyVector contains a given Every as a slice.
Finds first index where this NonEmptyVector contains a given Every as a slice.
- Value parameters:
- that
the
Everydefining the slice to look for
- Returns:
the first index such that the elements of this
NonEmptyVectorstarting at this index match the elements ofEverythat, or-1of no such subsequence exists.- Source:
- NonEmptyVector.scala
Finds first index where this NonEmptyVector contains a given NonEmptyVector as a slice.
Finds first index where this NonEmptyVector contains a given NonEmptyVector as a slice.
- Value parameters:
- that
the
NonEmptyVectordefining the slice to look for
- Returns:
the first index such that the elements of this
NonEmptyVectorstarting at this index match the elements ofNonEmptyVectorthat, or-1of no such subsequence exists.- Source:
- NonEmptyVector.scala
Finds first index after or at a start index where this NonEmptyVector contains a given Every as a slice.
Finds first index after or at a start index where this NonEmptyVector contains a given Every as a slice.
- Value parameters:
- from
the start index
- that
the
Everydefining the slice to look for
- Returns:
the first index
>=fromsuch that the elements of thisNonEmptyVectorstarting at this index match the elements ofEverythat, or-1of no such subsequence exists.- Source:
- NonEmptyVector.scala
Finds first index after or at a start index where this NonEmptyVector contains a given NonEmptyVector as a slice.
Finds first index after or at a start index where this NonEmptyVector contains a given NonEmptyVector as a slice.
- Value parameters:
- from
the start index
- that
the
NonEmptyVectordefining the slice to look for
- Returns:
the first index
>=fromsuch that the elements of thisNonEmptyVectorstarting at this index match the elements ofNonEmptyVectorthat, or-1of no such subsequence exists.- Source:
- NonEmptyVector.scala
Finds index of the first element satisfying some predicate.
Finds index of the first element satisfying some predicate.
- Value parameters:
- p
the predicate used to test elements.
- Returns:
the index of the first element of this
NonEmptyVectorthat satisfies the predicatep, or-1, if none exists.- Source:
- NonEmptyVector.scala
Finds index of the first element satisfying some predicate after or at some start index.
Finds index of the first element satisfying some predicate after or at some start index.
- Value parameters:
- from
the start index
- p
the predicate used to test elements.
- Returns:
the index
>=fromof the first element of thisNonEmptyVectorthat satisfies the predicatep, or-1, if none exists.- Source:
- NonEmptyVector.scala
Produces the range of all indices of this NonEmptyVector.
Produces the range of all indices of this NonEmptyVector.
- Returns:
a
Rangevalue from0to one less than the length of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Tests whether this NonEmptyVector contains given index.
Tests whether this NonEmptyVector contains given index.
- Value parameters:
- idx
the index to test
- Returns:
true if this
NonEmptyVectorcontains an element at positionidx,falseotherwise.- Source:
- NonEmptyVector.scala
Returns false to indicate this NonEmptyVector, like all NonEmptyVectors, is non-empty.
Returns false to indicate this NonEmptyVector, like all NonEmptyVectors, is non-empty.
- Returns:
false
- Source:
- NonEmptyVector.scala
Returns true to indicate this NonEmptyVector, like all NonEmptyVectors, can be traversed repeatedly.
Returns true to indicate this NonEmptyVector, like all NonEmptyVectors, can be traversed repeatedly.
- Returns:
true
- Source:
- NonEmptyVector.scala
Creates and returns a new iterator over all elements contained in this NonEmptyVector.
Creates and returns a new iterator over all elements contained in this NonEmptyVector.
- Returns:
the new iterator
- Source:
- NonEmptyVector.scala
Selects the last element of this NonEmptyVector.
Selects the last element of this NonEmptyVector.
- Returns:
the last element of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Finds the index of the last occurrence of some value in this NonEmptyVector.
Finds the index of the last occurrence of some value in this NonEmptyVector.
- Value parameters:
- elem
the element value to search for.
- Returns:
the index of the last element of this
NonEmptyVectorthat is equal (as determined by==) toelem, or-1, if none exists.- Source:
- NonEmptyVector.scala
Finds the index of the last occurrence of some value in this NonEmptyVector before or at a given end index.
Finds the index of the last occurrence of some value in this NonEmptyVector before or at a given end index.
- Value parameters:
- elem
the element value to search for.
- end
the end index.
- Returns:
the index
>=endof the last element of thisNonEmptyVectorthat is equal (as determined by==) toelem, or-1, if none exists.- Source:
- NonEmptyVector.scala
Finds the last index where this NonEmptyVector contains a given GenSeq as a slice.
Finds the last index where this NonEmptyVector contains a given GenSeq as a slice.
- Value parameters:
- that
the
GenSeqdefining the slice to look for
- Returns:
the last index at which the elements of this
NonEmptyVectorstarting at that index match the elements ofGenSeqthat, or-1of no such subsequence exists.- Source:
- NonEmptyVector.scala
Finds the last index before or at a given end index where this NonEmptyVector contains a given GenSeq as a slice.
Finds the last index before or at a given end index where this NonEmptyVector contains a given GenSeq as a slice.
- Value parameters:
- end
the end index
- that
the
GenSeqdefining the slice to look for
- Returns:
the last index
>=endat which the elements of thisNonEmptyVectorstarting at that index match the elements ofGenSeqthat, or-1of no such subsequence exists.- Source:
- NonEmptyVector.scala
Finds the last index where this NonEmptyVector contains a given Every as a slice.
Finds the last index where this NonEmptyVector contains a given Every as a slice.
- Value parameters:
- that
the
Everydefining the slice to look for
- Returns:
the last index at which the elements of this
NonEmptyVectorstarting at that index match the elements ofEverythat, or-1of no such subsequence exists.- Source:
- NonEmptyVector.scala
Finds the last index where this NonEmptyVector contains a given NonEmptyVector as a slice.
Finds the last index where this NonEmptyVector contains a given NonEmptyVector as a slice.
- Value parameters:
- that
the
NonEmptyVectordefining the slice to look for
- Returns:
the last index at which the elements of this
NonEmptyVectorstarting at that index match the elements ofNonEmptyVectorthat, or-1of no such subsequence exists.- Source:
- NonEmptyVector.scala
Finds the last index before or at a given end index where this NonEmptyVector contains a given Every as a slice.
Finds the last index before or at a given end index where this NonEmptyVector contains a given Every as a slice.
- Value parameters:
- end
the end index
- that
the
Everydefining the slice to look for
- Returns:
the last index
>=endat which the elements of thisNonEmptyVectorstarting at that index match the elements ofEverythat, or-1of no such subsequence exists.- Source:
- NonEmptyVector.scala
Finds the last index before or at a given end index where this NonEmptyVector contains a given NonEmptyVector as a slice.
Finds the last index before or at a given end index where this NonEmptyVector contains a given NonEmptyVector as a slice.
- Value parameters:
- end
the end index
- that
the
NonEmptyVectordefining the slice to look for
- Returns:
the last index
>=endat which the elements of thisNonEmptyVectorstarting at that index match the elements ofNonEmptyVectorthat, or-1of no such subsequence exists.- Source:
- NonEmptyVector.scala
Finds index of last element satisfying some predicate.
Finds index of last element satisfying some predicate.
- Value parameters:
- p
the predicate used to test elements.
- Returns:
the index of the last element of this
NonEmptyVectorthat satisfies the predicatep, or-1, if none exists.- Source:
- NonEmptyVector.scala
Finds index of last element satisfying some predicate before or at given end index.
Finds index of last element satisfying some predicate before or at given end index.
- Value parameters:
- end
the end index
- p
the predicate used to test elements.
- Returns:
the index
>=endof the last element of thisNonEmptyVectorthat satisfies the predicatep, or-1, if none exists.- Source:
- NonEmptyVector.scala
Returns the last element of this NonEmptyVector, wrapped in a Some.
Returns the last element of this NonEmptyVector, wrapped in a Some.
- Returns:
the last element, wrapped in a
Some.- Source:
- NonEmptyVector.scala
The length of this NonEmptyVector.
The length of this NonEmptyVector.
Note: length and size yield the same result, which will be >= 1.
- Returns:
the number of elements in this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Compares the length of this NonEmptyVector to a test value.
Compares the length of this NonEmptyVector to a test value.
- Value parameters:
- len
the test value that gets compared with the length.
- Returns:
a value
xwherex < 0 if this.length < len x == 0 if this.length == len x > 0 if this.length > len
- Source:
- NonEmptyVector.scala
Builds a new NonEmptyVector by applying a function to all elements of this NonEmptyVector.
Builds a new NonEmptyVector by applying a function to all elements of this NonEmptyVector.
- Type parameters:
- U
the element type of the returned
NonEmptyVector.
- Value parameters:
- f
the function to apply to each element.
- Returns:
a new
NonEmptyVectorresulting from applying the given functionfto each element of thisNonEmptyVectorand collecting the results.- Source:
- NonEmptyVector.scala
Finds the largest element.
Finds the largest element.
- Returns:
the largest element of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Finds the largest result after applying the given function to every element.
Finds the largest result after applying the given function to every element.
- Returns:
the largest result of applying the given function to every element of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Finds the smallest element.
Finds the smallest element.
- Returns:
the smallest element of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Finds the smallest result after applying the given function to every element.
Finds the smallest result after applying the given function to every element.
- Returns:
the smallest result of applying the given function to every element of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Displays all elements of this NonEmptyVector in a string.
Displays all elements of this NonEmptyVector in a string.
- Returns:
a string representation of this
NonEmptyVector. In the resulting string, the result of invokingtoStringon all elements of thisNonEmptyVectorfollow each other without any separator string.- Source:
- NonEmptyVector.scala
Displays all elements of this NonEmptyVector in a string using a separator string.
Displays all elements of this NonEmptyVector in a string using a separator string.
- Value parameters:
- sep
the separator string
- Returns:
a string representation of this
NonEmptyVector. In the resulting string, the result of invokingtoStringon all elements of thisNonEmptyVectorare separated by the stringsep.- Source:
- NonEmptyVector.scala
Displays all elements of this NonEmptyVector in a string using start, end, and separator strings.
Displays all elements of this NonEmptyVector in a string using start, end, and separator strings.
- Value parameters:
- end
the ending string.
- sep
the separator string.
- start
the starting string.
- Returns:
a string representation of this
NonEmptyVector. The resulting string begins with the stringstartand ends with the stringend. Inside, In the resulting string, the result of invokingtoStringon all elements of thisNonEmptyVectorare separated by the stringsep.- Source:
- NonEmptyVector.scala
Returns true to indicate this NonEmptyVector, like all NonEmptyVectors, is non-empty.
Returns true to indicate this NonEmptyVector, like all NonEmptyVectors, is non-empty.
- Returns:
true
- Source:
- NonEmptyVector.scala
A copy of this NonEmptyVector with an element value appended until a given target length is reached.
A copy of this NonEmptyVector with an element value appended until a given target length is reached.
- Value parameters:
- elem
he padding value
- len
the target length
- Returns:
a new
NonEmptyVectorconsisting of all elements of thisNonEmptyVectorfollowed by the minimal number of occurrences ofelemso that the resultingNonEmptyVectorhas a length of at leastlen.- Source:
- NonEmptyVector.scala
Produces a new NonEmptyVector where a slice of elements in this NonEmptyVector is replaced by another NonEmptyVector
Produces a new NonEmptyVector where a slice of elements in this NonEmptyVector is replaced by another NonEmptyVector
- Value parameters:
- from
the index of the first replaced element
- replaced
the number of elements to drop in the original
NonEmptyVector- that
the
NonEmptyVectorwhose elements should replace a slice in thisNonEmptyVector
- Source:
- NonEmptyVector.scala
Iterates over distinct permutations.
Iterates over distinct permutations.
Here's an example:
NonEmptyVector('a', 'b', 'b').permutations.toVector = Vector(NonEmptyVector(a, b, b), NonEmptyVector(b, a, b), NonEmptyVector(b, b, a))
- Returns:
an iterator that traverses the distinct permutations of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Returns the length of the longest prefix whose elements all satisfy some predicate.
Returns the length of the longest prefix whose elements all satisfy some predicate.
- Value parameters:
- p
the predicate used to test elements.
- Returns:
the length of the longest prefix of this
NonEmptyVectorsuch that every element of the segment satisfies the predicatep.- Source:
- NonEmptyVector.scala
The result of multiplying all the elements of this NonEmptyVector.
The result of multiplying all the elements of this NonEmptyVector.
This method can be invoked for any NonEmptyVector[T] for which an implicit Numeric[T] exists.
- Returns:
the product of all elements
- Source:
- NonEmptyVector.scala
Reduces the elements of this NonEmptyVector using the specified associative binary operator.
Reduces the elements of this NonEmptyVector using the specified associative binary operator.
The order in which operations are performed on elements is unspecified and may be nondeterministic.
- Type parameters:
- U
a type parameter for the binary operator, a supertype of T.
- Value parameters:
- op
a binary operator that must be associative.
- Returns:
the result of applying reduce operator
opbetween all the elements of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Applies a binary operator to all elements of this NonEmptyVector, going left to right.
Applies a binary operator to all elements of this NonEmptyVector, going left to right.
- Type parameters:
- U
the result type of the binary operator.
- Value parameters:
- op
the binary operator.
- Returns:
the result of inserting
opbetween consecutive elements of thisNonEmptyVector, going left to right:op(...op(op(x_1, x_2), x_3), ..., x_n)
where x1, ..., xn are the elements of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Applies a binary operator to all elements of this NonEmptyVector, going left to right, returning the result in a Some.
Applies a binary operator to all elements of this NonEmptyVector, going left to right, returning the result in a Some.
- Type parameters:
- U
the result type of the binary operator.
- Value parameters:
- op
the binary operator.
- Returns:
a
Somecontaining the result ofreduceLeft(op)- Source:
- NonEmptyVector.scala
Applies a binary operator to all elements of this NonEmptyVector, going right to left.
Applies a binary operator to all elements of this NonEmptyVector, going right to left.
- Type parameters:
- U
the result of the binary operator
- Value parameters:
- op
the binary operator
- Returns:
the result of inserting
opbetween consecutive elements of thisNonEmptyVector, going right to left:op(x_1, op(x_2, ... op(x_{n-1}, x_n)...))where x1, ..., xn are the elements of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Applies a binary operator to all elements of this NonEmptyVector, going right to left, returning the result in a Some.
Applies a binary operator to all elements of this NonEmptyVector, going right to left, returning the result in a Some.
- Type parameters:
- U
the result of the binary operator
- Value parameters:
- op
the binary operator
- Returns:
a
Somecontaining the result ofreduceRight(op)- Source:
- NonEmptyVector.scala
Returns new NonEmptyVector with elements in reverse order.
Returns new NonEmptyVector with elements in reverse order.
- Returns:
a new
NonEmptyVectorwith all elements of thisNonEmptyVectorin reversed order.- Source:
- NonEmptyVector.scala
An iterator yielding elements in reverse order.
An iterator yielding elements in reverse order.
Note: nonEmptyVector.reverseIterator is the same as nonEmptyVector.reverse.iterator, but might be more efficient.
- Returns:
an iterator yielding the elements of this
NonEmptyVectorin reversed order- Source:
- NonEmptyVector.scala
Builds a new NonEmptyVector by applying a function to all elements of this NonEmptyVector and collecting the results in reverse order.
Builds a new NonEmptyVector by applying a function to all elements of this NonEmptyVector and collecting the results in reverse order.
Note: nonEmptyVector.reverseMap(f) is the same as nonEmptyVector.reverse.map(f), but might be more efficient.
- Type parameters:
- U
the element type of the returned
NonEmptyVector.
- Value parameters:
- f
the function to apply to each element.
- Returns:
a new
NonEmptyVectorresulting from applying the given functionfto each element of thisNonEmptyVectorand collecting the results in reverse order.- Source:
- NonEmptyVector.scala
Checks if the given GenIterable contains the same elements in the same order as this NonEmptyVector.
Checks if the given GenIterable contains the same elements in the same order as this NonEmptyVector.
- Value parameters:
- that
the
GenIterablewith which to compare
- Returns:
true, if both thisNonEmptyVectorand the givenGenIterablecontain the same elements in the same order,falseotherwise.- Source:
- NonEmptyVector.scala
Checks if the given Every contains the same elements in the same order as this NonEmptyVector.
Checks if the given Every contains the same elements in the same order as this NonEmptyVector.
- Value parameters:
- that
the
Everywith which to compare
- Returns:
true, if both this and the givenEverycontain the same elements in the same order,falseotherwise.- Source:
- NonEmptyVector.scala
Checks if the given NonEmptyVector contains the same elements in the same order as this NonEmptyVector.
Checks if the given NonEmptyVector contains the same elements in the same order as this NonEmptyVector.
- Value parameters:
- that
the
NonEmptyVectorwith which to compare
- Returns:
true, if both this and the givenNonEmptyVectorcontain the same elements in the same order,falseotherwise.- Source:
- NonEmptyVector.scala
Computes a prefix scan of the elements of this NonEmptyVector.
Computes a prefix scan of the elements of this NonEmptyVector.
Note: The neutral element z may be applied more than once.
Here are some examples:
NonEmptyVector(1, 2, 3).scan(0)(_ + _) == NonEmptyVector(0, 1, 3, 6)
NonEmptyVector(1, 2, 3).scan("z")(_ + _.toString) == NonEmptyVector("z", "z1", "z12", "z123")
- Type parameters:
- U
a type parameter for the binary operator, a supertype of T, and the type of the resulting
NonEmptyVector.
- Value parameters:
- op
a binary operator that must be associative
- z
a neutral element for the scan operation; may be added to the result an arbitrary number of times, and must not change the result (e.g.,
Nilfor list concatenation, 0 for addition, or 1 for multiplication.)
- Returns:
a new
NonEmptyVectorcontaining the prefix scan of the elements in thisNonEmptyVector- Source:
- NonEmptyVector.scala
Produces a NonEmptyVector containing cumulative results of applying the operator going left to right.
Produces a NonEmptyVector containing cumulative results of applying the operator going left to right.
Here are some examples:
NonEmptyVector(1, 2, 3).scanLeft(0)(_ + _) == NonEmptyVector(0, 1, 3, 6)
NonEmptyVector(1, 2, 3).scanLeft("z")(_ + _) == NonEmptyVector("z", "z1", "z12", "z123")
- Type parameters:
- B
the result type of the binary operator and type of the resulting
NonEmptyVector
- Value parameters:
- op
the binary operator.
- z
the start value.
- Returns:
a new
NonEmptyVectorcontaining the intermediate results of insertingopbetween consecutive elements of thisNonEmptyVector, going left to right, with the start value,z, on the left.- Source:
- NonEmptyVector.scala
Produces a NonEmptyVector containing cumulative results of applying the operator going right to left.
Produces a NonEmptyVector containing cumulative results of applying the operator going right to left.
Here are some examples:
NonEmptyVector(1, 2, 3).scanRight(0)(_ + _) == NonEmptyVector(6, 5, 3, 0)
NonEmptyVector(1, 2, 3).scanRight("z")(_ + _) == NonEmptyVector("123z", "23z", "3z", "z")
- Type parameters:
- B
the result of the binary operator and type of the resulting
NonEmptyVector
- Value parameters:
- op
the binary operator
- z
the start value
- Returns:
a new
NonEmptyVectorcontaining the intermediate results of insertingopbetween consecutive elements of thisNonEmptyVector, going right to left, with the start value,z, on the right.- Source:
- NonEmptyVector.scala
Computes length of longest segment whose elements all satisfy some predicate.
Computes length of longest segment whose elements all satisfy some predicate.
- Value parameters:
- from
the index where the search starts.
- p
the predicate used to test elements.
- the
length of the longest segment of this
NonEmptyVectorstarting from indexfromsuch that every element of the segment satisfies the predicatep.
- Source:
- NonEmptyVector.scala
The size of this NonEmptyVector.
The size of this NonEmptyVector.
Note: length and size yield the same result, which will be >= 1.
- Returns:
the number of elements in this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Groups elements in fixed size blocks by passing a “sliding window” over them (as opposed to partitioning them, as is done in grouped.)
Groups elements in fixed size blocks by passing a “sliding window” over them (as opposed to partitioning them, as is done in grouped.)
- Value parameters:
- size
the number of elements per group
- Returns:
an iterator producing
NonEmptyVectors of sizesize, except the last and the only element will be truncated if there are fewer elements thansize.- Source:
- NonEmptyVector.scala
Groups elements in fixed size blocks by passing a “sliding window” over them (as opposed to partitioning them, as is done in grouped.),
moving the sliding window by a given step each time.
Groups elements in fixed size blocks by passing a “sliding window” over them (as opposed to partitioning them, as is done in grouped.),
moving the sliding window by a given step each time.
- Value parameters:
- size
the number of elements per group
- step
the distance between the first elements of successive groups
- Returns:
an iterator producing
NonEmptyVectors of sizesize, except the last and the only element will be truncated if there are fewer elements thansize.- Source:
- NonEmptyVector.scala
Sorts this NonEmptyVector according to the Ordering of the result of applying the given function to every element.
Sorts this NonEmptyVector according to the Ordering of the result of applying the given function to every element.
- Type parameters:
- U
the target type of the transformation
f, and the type where theOrderingordis defined.
- Value parameters:
- f
the transformation function mapping elements to some other domain
U.- ord
the ordering assumed on domain
U.
- Returns:
a
NonEmptyVectorconsisting of the elements of thisNonEmptyVectorsorted according to theOrderingwherex < y if ord.lt(f(x), f(y)).- Source:
- NonEmptyVector.scala
Sorts this NonEmptyVector according to a comparison function.
Sorts this NonEmptyVector according to a comparison function.
The sort is stable. That is, elements that are equal (as determined by lt) appear in the same order in the
sorted NonEmptyVector as in the original.
- Value parameters:
- the
comparison function that tests whether its first argument precedes its second argument in the desired ordering.
- Returns:
a
NonEmptyVectorconsisting of the elements of thisNonEmptyVectorsorted according to the comparison functionlt.- Source:
- NonEmptyVector.scala
Sorts this NonEmptyVector according to an Ordering.
Sorts this NonEmptyVector according to an Ordering.
The sort is stable. That is, elements that are equal (as determined by lt) appear in the same order in the
sorted NonEmptyVector as in the original.
- Value parameters:
- ord
the
Orderingto be used to compare elements.- the
comparison function that tests whether its first argument precedes its second argument in the desired ordering.
- Returns:
a
NonEmptyVectorconsisting of the elements of thisNonEmptyVectorsorted according to the comparison functionlt.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector starts with the given GenSeq.
Indicates whether this NonEmptyVector starts with the given GenSeq.
- Value parameters:
- that
the
GenSeqslice to look for in thisNonEmptyVector
- Returns:
trueif thisNonEmptyVectorhasthatas a prefix,falseotherwise.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector starts with the given GenSeq at the given index.
Indicates whether this NonEmptyVector starts with the given GenSeq at the given index.
- Value parameters:
- offset
the index at which this
NonEmptyVectoris searched.- that
the
GenSeqslice to look for in thisNonEmptyVector
- Returns:
trueif thisNonEmptyVectorhasthatas a slice at the indexoffset,falseotherwise.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector starts with the given Every.
Indicates whether this NonEmptyVector starts with the given Every.
- Value parameters:
- that
the
Everyto test
- Returns:
trueif this collection hasthatas a prefix,falseotherwise.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector starts with the given NonEmptyVector.
Indicates whether this NonEmptyVector starts with the given NonEmptyVector.
- Value parameters:
- that
the
NonEmptyVectorto test
- Returns:
trueif this collection hasthatas a prefix,falseotherwise.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector starts with the given Every at the given index.
Indicates whether this NonEmptyVector starts with the given Every at the given index.
- Value parameters:
- offset
the index at which this
NonEmptyVectoris searched.- that
the
Everyslice to look for in thisNonEmptyVector
- Returns:
trueif thisNonEmptyVectorhasthatas a slice at the indexoffset,falseotherwise.- Source:
- NonEmptyVector.scala
Indicates whether this NonEmptyVector starts with the given NonEmptyVector at the given index.
Indicates whether this NonEmptyVector starts with the given NonEmptyVector at the given index.
- Value parameters:
- offset
the index at which this
NonEmptyVectoris searched.- that
the
NonEmptyVectorslice to look for in thisNonEmptyVector
- Returns:
trueif thisNonEmptyVectorhasthatas a slice at the indexoffset,falseotherwise.- Source:
- NonEmptyVector.scala
Returns "NonEmptyVector", the prefix of this object's toString representation.
Returns "NonEmptyVector", the prefix of this object's toString representation.
- Returns:
the string
"NonEmptyVector"- Source:
- NonEmptyVector.scala
The result of summing all the elements of this NonEmptyVector.
The result of summing all the elements of this NonEmptyVector.
This method can be invoked for any NonEmptyVector[T] for which an implicit Numeric[T] exists.
- Returns:
the sum of all elements
- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector into a collection of type Col by copying all elements.
Converts this NonEmptyVector into a collection of type Col by copying all elements.
- Type parameters:
- Col
the collection type to build.
- Returns:
a new collection containing all elements of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector to an array.
Converts this NonEmptyVector to an array.
- Returns:
an array containing all elements of this
NonEmptyVector. AClassTagmust be available for the element type of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector to a mutable buffer.
Converts this NonEmptyVector to a mutable buffer.
- Returns:
a buffer containing all elements of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector to an immutable IndexedSeq.
Converts this NonEmptyVector to an immutable IndexedSeq.
- Returns:
an immutable
IndexedSeqcontaining all elements of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector to an iterable collection.
Converts this NonEmptyVector to an iterable collection.
- Returns:
an
Iterablecontaining all elements of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Returns an Iterator over the elements in this NonEmptyVector.
Returns an Iterator over the elements in this NonEmptyVector.
- Returns:
an
Iteratorcontaining all elements of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector to a Vector.
Converts this NonEmptyVector to a Vector.
- Returns:
a
Vectorcontaining all elements of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector to a map.
Converts this NonEmptyVector to a map.
This method is unavailable unless the elements are members of Tuple2, each ((K, V)) becoming a key-value pair
in the map. Duplicate keys will be overwritten by later keys.
- Returns:
a map of type
immutable.Map[K, V]containing all key/value pairs of type(K, V)of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector to an immutable IndexedSeq.
Converts this NonEmptyVector to an immutable IndexedSeq.
- Returns:
an immutable
IndexedSeqcontaining all elements of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector to a set.
Converts this NonEmptyVector to a set.
- Returns:
a set containing all elements of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector to a stream.
Converts this NonEmptyVector to a stream.
- Returns:
a stream containing all elements of this
NonEmptyVector.- Source:
- NonEmptyVector.scala
Returns a string representation of this NonEmptyVector.
Returns a string representation of this NonEmptyVector.
- Returns:
the string
"NonEmptyVector"followed by the result of invokingtoStringon thisNonEmptyVector's elements, surrounded by parentheses.- Definition Classes
- Any
- Source:
- NonEmptyVector.scala
Produces a new NonEmptyVector that contains all elements of this NonEmptyVector and also all elements of a given Every.
Produces a new NonEmptyVector that contains all elements of this NonEmptyVector and also all elements of a given Every.
nonEmptyVectorX union everyY is equivalent to nonEmptyVectorX ++ everyY.
Another way to express this is that nonEmptyVectorX union everyY computes the order-presevring multi-set union
of nonEmptyVectorX and everyY. This union method is hence a counter-part of diff and intersect that
also work on multi-sets.
- Value parameters:
- that
the
Everyto add.
- Returns:
a new
NonEmptyVectorthat contains all elements of thisNonEmptyVectorfollowed by all elements ofthatEvery.- Source:
- NonEmptyVector.scala
Produces a new NonEmptyVector that contains all elements of this NonEmptyVector and also all elements of a given NonEmptyVector.
Produces a new NonEmptyVector that contains all elements of this NonEmptyVector and also all elements of a given NonEmptyVector.
nonEmptyVectorX union nonEmptyVectorY is equivalent to nonEmptyVectorX ++ nonEmptyVectorY.
Another way to express this is that nonEmptyVectorX union nonEmptyVectorY computes the order-presevring multi-set union
of nonEmptyVectorX and nonEmptyVectorY. This union method is hence a counter-part of diff and intersect that
also work on multi-sets.
- Value parameters:
- that
the
NonEmptyVectorto add.
- Returns:
a new
NonEmptyVectorthat contains all elements of thisNonEmptyVectorfollowed by all elements ofthat.- Source:
- NonEmptyVector.scala
Produces a new NonEmptyVector that contains all elements of this NonEmptyVector and also all elements of a given GenSeq.
Produces a new NonEmptyVector that contains all elements of this NonEmptyVector and also all elements of a given GenSeq.
nonEmptyVectorX union ys is equivalent to nonEmptyVectorX ++ ys.
Another way to express this is that nonEmptyVectorX union ys computes the order-presevring multi-set union
of nonEmptyVectorX and ys. This union method is hence a counter-part of diff and intersect that
also work on multi-sets.
- Value parameters:
- that
the
GenSeqto add.
- Returns:
a new
NonEmptyVectorthat contains all elements of thisNonEmptyVectorfollowed by all elements ofthatGenSeq.- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector of pairs into two NonEmptyVectors of the first and second half of each pair.
Converts this NonEmptyVector of pairs into two NonEmptyVectors of the first and second half of each pair.
- Type parameters:
- L
the type of the first half of the element pairs
- R
the type of the second half of the element pairs
- Value parameters:
- asPair
an implicit conversion that asserts that the element type of this
NonEmptyVectoris a pair.
- Returns:
a pair of
NonEmptyVectors, containing the first and second half, respectively, of each element pair of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
Converts this NonEmptyVector of triples into three NonEmptyVectors of the first, second, and and third element of each triple.
Converts this NonEmptyVector of triples into three NonEmptyVectors of the first, second, and and third element of each triple.
- Type parameters:
- L
the type of the first member of the element triples
- R
the type of the third member of the element triples
- Value parameters:
- asTriple
an implicit conversion that asserts that the element type of this
NonEmptyVectoris a triple.
- Returns:
a triple of
NonEmptyVectors, containing the first, second, and third member, respectively, of each element triple of thisNonEmptyVector.- Source:
- NonEmptyVector.scala
A copy of this NonEmptyVector with one single replaced element.
A copy of this NonEmptyVector with one single replaced element.
- Value parameters:
- elem
the replacing element
- idx
the position of the replacement
- Returns:
a copy of this
NonEmptyVectorwith the element at positionidxreplaced byelem.- Throws:
- IndexOutOfBoundsException
if the passed index is greater than or equal to the length of this
NonEmptyVector
- Source:
- NonEmptyVector.scala
Returns a NonEmptyVector formed from this NonEmptyVector and an iterable collection by combining corresponding
elements in pairs. If one of the two collections is shorter than the other, placeholder elements will be used to extend the
shorter collection to the length of the longer.
Returns a NonEmptyVector formed from this NonEmptyVector and an iterable collection by combining corresponding
elements in pairs. If one of the two collections is shorter than the other, placeholder elements will be used to extend the
shorter collection to the length of the longer.
- Value parameters:
- other
the
Iterableproviding the second half of each result pair- thatElem
the element to be used to fill up the result if
thatIterableis shorter than thisNonEmptyVector.- thisElem
the element to be used to fill up the result if this
NonEmptyVectoris shorter thanthatIterable.
- Returns:
a new
NonEmptyVectorcontaining pairs consisting of corresponding elements of thisNonEmptyVectorandthat. The length of the returned collection is the maximum of the lengths of thisNonEmptyVectorandthat. If thisNonEmptyVectoris shorter thanthat,thisElemvalues are used to pad the result. Ifthatis shorter than thisNonEmptyVector,thatElemvalues are used to pad the result.- Source:
- NonEmptyVector.scala
Zips this NonEmptyVector with its indices.
Zips this NonEmptyVector with its indices.
- Returns:
A new
NonEmptyVectorcontaining pairs consisting of all elements of thisNonEmptyVectorpaired with their index. Indices start at 0.- Source:
- NonEmptyVector.scala