final class HListOps[L <: HList] extends Serializable
Carrier for HList
operations.
These methods are implemented here and pimped onto the minimal HList
types to avoid issues that would otherwise be
caused by the covariance of ::[H, T]
.
- Alphabetic
- By Inheritance
- HListOps
- Serializable
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new HListOps(l: L)
Type Members
- class PatchAux[N <: Nat, M <: Nat] extends AnyRef
- class ReinsertAllAux[O <: HList] extends AnyRef
- class ReinsertAux[O <: HList] extends AnyRef
- class ReplaceTypeAux[U] extends AnyRef
-
case class
SelectManyAux[L <: HList](l: L) extends NatProductArgs with Product with Serializable
Returns the elements of this
HList
specified byIds
.Returns the elements of this
HList
specified byIds
. Available only if there is evidence that thisHList
contains all elements specified inIds
. - class UpdatedAtAux[N <: Nat] extends AnyRef
- class UpdatedTypeAux[U] extends AnyRef
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
++[S <: HList](suffix: S)(implicit prepend: Prepend[L, S]): Out
Append the argument
HList
to thisHList
. -
def
++:[P <: HList](prefix: P)(implicit prepend: Prepend[P, L]): Out
Prepend the argument
HList
to thisHList
. -
def
+:[H](h: H): ::[H, L]
Prepend the argument element to this
HList
. -
def
:+[T](t: T)(implicit prepend: Prepend[L, ::[T, HNil]]): Out
Append the argument element to this
HList
. -
def
::[H](h: H): ::[H, L]
Prepend the argument element to this
HList
. -
def
:::[P <: HList](prefix: P)(implicit prepend: Prepend[P, L]): Out
Prepend the argument
HList
to thisHList
. -
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
adjoined(implicit adjoin: Adjoin[L]): ops.adjoin.Adjoin.Out
Adjoins the elements of this
HList
by flattening anyHList
elements. -
def
align[M <: HList](m: M)(implicit align: Align[L, M]): M
Permutes this
HList
into the same order as the suppliedHList
with the same element types.Permutes this
HList
into the same order as the suppliedHList
with the same element types. Available only if bothHList
s have elements of the same types. -
def
align[M <: HList](implicit align: Align[L, M]): M
Permutes this
HList
into the same order as anotherHList
.Permutes this
HList
into the same order as anotherHList
. An explicit type argument must be supplied. Available only if bothHList
s have elements of the same types. -
def
apply(n: Nat)(implicit at: At[L, N]): ops.hlist.At.Out
Returns the nth element of this
HList
.Returns the nth element of this
HList
. Available only if there is evidence that thisHList
has at least n elements. -
def
apply[N <: Nat](implicit at: At[L, N]): ops.hlist.At.Out
Returns the nth element of this
HList
.Returns the nth element of this
HList
. An explicit type argument must be provided. Available only if there is evidence that thisHList
has at least n elements. -
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
at(n: Nat)(implicit at: At[L, N]): ops.hlist.At.Out
Returns the nth element of this
HList
.Returns the nth element of this
HList
. Available only if there is evidence that thisHList
has at least n elements. -
def
at[N <: Nat](implicit at: At[L, N]): ops.hlist.At.Out
Returns the nth element of this
HList
.Returns the nth element of this
HList
. An explicit type argument must be provided. Available only if there is evidence that thisHList
has at least n elements. -
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
collect(p: Poly)(implicit collect: Collect[L, p.type]): Out
Collect a higher rank function across this
HList
. -
def
collectFirst[P <: Poly](p: P)(implicit collect: CollectFirst[L, p.type]): ops.hlist.CollectFirst.Out
Finds the first element of the HList for which the given Poly is defined, and applies the Poly to it.
-
def
combinations(n: Nat)(implicit combinations: Combinations[N, L]): Out
Returns all combinations of exactly length
N
of elements from thisHlist
-
def
diff[M <: HList](implicit diff: Diff[L, M]): Out
Returns the difference between this
HList
and anotherHList
.Returns the difference between this
HList
and anotherHList
. In case of duplicate types, this operation is a multiset difference. If typeT
appears n times in thisHList
and m < n times inM
, the resultingHList
contains the last n - m elements of typeT
in thisHList
. Also available ifM
contains types absent in thisHList
. -
def
drop(n: Nat)(implicit drop: Drop[L, N]): Out
Returns all but the first n elements of this
HList
.Returns all but the first n elements of this
HList
. Available only if there is evidence that thisHList
has at least n elements. -
def
drop[N <: Nat](implicit drop: Drop[L, N]): Out
Returns all but the first n elements of this
HList
.Returns all but the first n elements of this
HList
. An explicit type argument must be provided. Available only if there is evidence that thisHList
has at least n elements. -
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
filter[U](implicit partition: Partition[L, U]): Prefix
Returns all elements of type
U
of thisHList
.Returns all elements of type
U
of thisHList
. An explicit type argument must be provided. -
def
filterNot[U](implicit partition: Partition[L, U]): Suffix
Returns all elements of type different than
U
of thisHList
.Returns all elements of type different than
U
of thisHList
. An explicit type argument must be provided. -
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
flatMap(f: Poly)(implicit mapper: FlatMapper[f.type, L]): Out
Flatmaps a higher rank function across this
HList
. -
def
foldLeft[R](z: R)(op: Poly)(implicit folder: LeftFolder[L, R, op.type]): ops.hlist.LeftFolder.Out
Computes a left fold over this
HList
using the polymorphic binary combining operatorop
.Computes a left fold over this
HList
using the polymorphic binary combining operatorop
. Available only if there is evidenceop
can consume/produce all the partial results of the appropriate types. -
def
foldMap[R](z: R)(f: Poly)(op: (R, R) ⇒ R)(implicit folder: MapFolder[L, R, f.type]): R
Maps a higher rank function f across this
HList
and folds the result using monomorphic combining operatorop
.Maps a higher rank function f across this
HList
and folds the result using monomorphic combining operatorop
. Available only if there is evidence that the result type off
at each element conforms to the argument type of op. -
def
foldRight[R](z: R)(op: Poly)(implicit folder: RightFolder[L, R, op.type]): ops.hlist.RightFolder.Out
Computes a right fold over this
HList
using the polymorphic binary combining operatorop
.Computes a right fold over this
HList
using the polymorphic binary combining operatorop
. Available only if there is evidenceop
can consume/produce all the partial results of the appropriate types. -
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
group[Pad <: HList](n: Nat, step: Nat, pad: Pad)(implicit grouper: PaddedGrouper[L, N, N, Pad]): Out
Groups the elements of this
HList
into tuples ofn
elements, offset bystep
Use elements inpad
as necessary to complete last group up ton
items. -
def
group(n: Nat, step: Nat)(implicit grouper: Grouper[L, N, N]): Out
Groups the elements of this
HList
into tuples ofn
elements, offset bystep
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
head(implicit c: IsHCons[L]): H
Returns the head of this
HList
.Returns the head of this
HList
. Available only if there is evidence that thisHList
is composite. -
def
init(implicit init: Init[L]): Out
Returns an
HList
consisting of all the elements of thisHList
except the last.Returns an
HList
consisting of all the elements of thisHList
except the last. Available only if there is evidence that thisHList
is composite. -
def
intersect[M <: HList](implicit intersection: Intersection[L, M]): Out
Returns the intersection between this
HList
and anotherHList
.Returns the intersection between this
HList
and anotherHList
. In case of duplicate types, this operation is a multiset intersection. If typeT
appears n times in thisHList
and m < n times inM
, the resultingHList
contains the first m elements of typeT
in thisHList
. Also available ifM
contains types absent in thisHList
. -
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
last(implicit last: Last[L]): ops.hlist.Last.Out
Returns the last element of this
HList
.Returns the last element of this
HList
. Available only if there is evidence that thisHList
is composite. -
def
length(implicit length: Length[L]): Out
Compute the length of this
HList
. -
def
map(f: Poly)(implicit mapper: Mapper[f.type, L]): Out
Maps a higher rank function across this
HList
. -
def
mapCons[A](a: A)(implicit mapCons: MapCons[A, L]): Out
Conses an element onto each row of this HMatrix (HList of HLists).
-
def
mapConst[C](c: C)(implicit mapper: ConstMapper[C, L]): Out
Replaces each element of this
HList
with a constant value. -
def
mkString(start: String, sep: String, end: String)(implicit toTraversable: ToTraversable[L, List] = null): String
Displays all elements of this hlist in a string using start, end, and separator strings.
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
padTo[A](n: Nat, elem: A)(implicit padTo: PadTo[N, A, L]): Out
Appends
elem
until a given lengthN
is reached. - def partition[U](implicit partition: Partition[L, U]): (Prefix, Suffix)
- def partitionP[U](implicit partition: Partition[L, U]): ::[Prefix, ::[Suffix, HNil]]
-
def
patch[N <: Nat, M <: Nat]: PatchAux[N, M]
Produces a new
HList
where a slice of thisHList
is replaced by another.Produces a new
HList
where a slice of thisHList
is replaced by another. Two explicit type arguments must be provided. Available only if there are at leastN
plusM
elements. -
def
patch[In <: HList](n: Nat, in: In, m: Nat)(implicit patcher: Patcher[N, N, L, In]): Out
Produces a new
HList
where a slice of thisHList
is replaced by another.Produces a new
HList
where a slice of thisHList
is replaced by another. Available only if there are at least
plusn
elements.m
-
def
permutations(implicit permutations: Permutations[L]): Out
Returns all permutations of this 'HList'
-
def
reduceLeft(op: Poly)(implicit reducer: LeftReducer[L, op.type]): ops.hlist.LeftReducer.Out
Computes a left reduce over this
HList
using the polymorphic binary combining operatorop
.Computes a left reduce over this
HList
using the polymorphic binary combining operatorop
. Available only if there is evidence that thisHList
has at least one element and thatop
can consume/produce all the partial results of the appropriate types. -
def
reduceRight(op: Poly)(implicit reducer: RightReducer[L, op.type]): ops.hlist.RightReducer.Out
Computes a right reduce over this
HList
using the polymorphic binary combining operatorop
.Computes a right reduce over this
HList
using the polymorphic binary combining operatorop
. Available only if there is evidence that thisHList
has at least one element and thatop
can consume/produce all the partial results of the appropriate types. -
def
reinsert[O <: HList]: ReinsertAux[O]
Reinserts an element
U
into thisHList
to return anotherHList
O
. -
def
reinsertAll[O <: HList]: ReinsertAllAux[O]
Reinserts the elements of
SL
into thisHList
to return anotherHList
O
. -
def
removeAll[SL <: HList](implicit removeAll: RemoveAll[L, SL]): ops.hlist.RemoveAll.Out
Returns the first elements of this
HList
that have types inSL
plus the remainder of theHList
.Returns the first elements of this
HList
that have types inSL
plus the remainder of theHList
. An expicit type argument must be provided. Available only if there is evidence that thisHList
contains elements with types inSL
. -
def
removeElem[U](implicit remove: Remove[L, U]): ops.hlist.Remove.Out
Returns the first element of type
U
of thisHList
plus the remainder of theHList
.Returns the first element of type
U
of thisHList
plus the remainder of theHList
. An explicit type argument must be provided. Available only if there is evidence that thisHList
has an element of typeU
.The
Elem
suffix is here to avoid creating an ambiguity with RecordOps#remove and should be removed if SI-5414 is resolved in a way which eliminates the ambiguity. -
def
repeat[N <: Nat](implicit repeat: Repeat[L, N]): Out
Repeats this
HList
N times. -
def
replace[U](u: U)(implicit replacer: Replacer[L, U, U]): ops.hlist.Replacer.Out
Replaces the first element of type
U
of thisHList
with the supplied value, also of typeU
returning both the replaced element and the updatedHList
.Replaces the first element of type
U
of thisHList
with the supplied value, also of typeU
returning both the replaced element and the updatedHList
. Available only if there is evidence that thisHList
has an element of typeU
. -
def
replaceType[U]: ReplaceTypeAux[U]
Replaces the first element of type
U
of thisHList
with the supplied value of typeV
, returning both the replaced element and the updatedHList
.Replaces the first element of type
U
of thisHList
with the supplied value of typeV
, returning both the replaced element and the updatedHList
. An explicit type argument must be provided forU
. Available only if there is evidence that thisHList
has an element of typeU
. -
def
reverse(implicit reverse: Reverse[L]): Out
Reverses this
HList
. -
def
reverse_:::[P <: HList](prefix: P)(implicit prepend: ReversePrepend[P, L]): Out
Prepend the reverse of the argument
HList
to thisHList
. -
def
reverse_split(n: Nat)(implicit split: ReverseSplit[L, N]): (Prefix, Suffix)
Splits this
HList
at the nth element, returning the reverse of the prefix and suffix as a pair.Splits this
HList
at the nth element, returning the reverse of the prefix and suffix as a pair. Available only if there is evidence that thisHList
has at least n elements. -
def
reverse_split[N <: Nat](implicit split: ReverseSplit[L, N]): (Prefix, Suffix)
Splits this
HList
at the nth element, returning the reverse of the prefix and suffix as a pair.Splits this
HList
at the nth element, returning the reverse of the prefix and suffix as a pair. An explicit type argument must be provided. Available only if there is evidence that thisHList
has at least n elements. -
def
reverse_splitLeft[U](implicit split: ReverseSplitLeft[L, U]): (Prefix, Suffix)
Splits this
HList
at the first occurrence of an element of typeU
, returning reverse of the prefix and suffix as a pair.Splits this
HList
at the first occurrence of an element of typeU
, returning reverse of the prefix and suffix as a pair. An explicit type argument must be provided. Available only if there is evidence that thisHList
has an element of typeU
. - def reverse_splitLeftP[U](implicit split: ReverseSplitLeft[L, U]): ::[Prefix, ::[Suffix, HNil]]
- def reverse_splitP(n: Nat)(implicit split: ReverseSplit[L, N]): ::[Prefix, ::[Suffix, HNil]]
- def reverse_splitP[N <: Nat](implicit split: ReverseSplit[L, N]): ::[Prefix, ::[Suffix, HNil]]
-
def
reverse_splitRight[U](implicit split: ReverseSplitRight[L, U]): (Prefix, Suffix)
Splits this
HList
at the last occurrence of an element of typeU
, returning reverse of the prefix and suffix as a pair.Splits this
HList
at the last occurrence of an element of typeU
, returning reverse of the prefix and suffix as a pair. An explicit type argument must be provided. Available only if there is evidence that thisHList
has an element of typeU
. - def reverse_splitRightP[U](implicit split: ReverseSplitRight[L, U]): ::[Prefix, ::[Suffix, HNil]]
-
def
rotateLeft(n: Nat)(implicit rotateLeft: RotateLeft[L, N]): Out
Rotate this 'HList' left by N
-
def
rotateLeft[N <: Nat](implicit rotateLeft: RotateLeft[L, N]): Out
Rotate this 'HList' left by N.
Rotate this 'HList' left by N. An explicit type argument must be provided.
-
def
rotateRight(n: Nat)(implicit rotateRight: RotateRight[L, N]): Out
Rotate this 'HList' right by N
-
def
rotateRight[N <: Nat](implicit rotateRight: RotateRight[L, N]): Out
Rotate this 'HList' right by N.
Rotate this 'HList' right by N. An explicit type argument must be provided.
-
def
runtimeLength: Int
Compute the length of this
HList
as a runtime Int value. -
def
runtimeList: List[Any]
Convert this
HList
to aList[Any]
. -
def
scanLeft[A, P <: Poly](z: A)(op: Poly)(implicit scanL: LeftScanner[L, A, op.type]): Out
Computes a left scan over this
HList
using the polymorphic binary combining operatorop
.Computes a left scan over this
HList
using the polymorphic binary combining operatorop
. Available only if there is evidenceop
can consume/produce all the results of the appropriate types. -
def
scanRight[A, P <: Poly](z: A)(op: Poly)(implicit scanR: RightScanner[L, A, op.type]): Out
Computes a right scan over this
HList
using the polymorphic binary combining operatorop
.Computes a right scan over this
HList
using the polymorphic binary combining operatorop
. Available only if there is evidenceop
can consume/produce all the results of the appropriate types. -
def
select[U](implicit selector: Selector[L, U]): U
Returns the first element of type
U
of thisHList
.Returns the first element of type
U
of thisHList
. An explicit type argument must be provided. Available only if there is evidence that thisHList
has an element of typeU
. - def selectMany: SelectManyAux[L]
- def selectManyType[Ids <: HList](implicit sel: SelectMany[L, Ids]): Out
- def selectRange(a: Nat, b: Nat)(implicit sel: SelectRange[L, N, N]): Out
-
def
selectRange[A <: Nat, B <: Nat](implicit sel: SelectRange[L, A, B]): Out
Returns the elements of this
HList
specified by the range of ids in [A,B[ Available only if there is evidence that thisHList
contains all elements in that range -
def
slice(from: Nat, until: Nat)(implicit slice: Slice[N, N, L]): Out
Slices beginning at index
from
and afterwards, up until indexuntil
-
def
split(n: Nat)(implicit split: Split[L, N]): (Prefix, Suffix)
Splits this
HList
at the nth element, returning the prefix and suffix as a pair.Splits this
HList
at the nth element, returning the prefix and suffix as a pair. Available only if there is evidence that thisHList
has at least n elements. -
def
split[N <: Nat](implicit split: Split[L, N]): (Prefix, Suffix)
Splits this
HList
at the nth element, returning the prefix and suffix as a pair.Splits this
HList
at the nth element, returning the prefix and suffix as a pair. An explicit type argument must be provided. Available only if there is evidence that thisHList
has at least n elements. -
def
splitLeft[U](implicit split: SplitLeft[L, U]): (Prefix, Suffix)
Splits this
HList
at the first occurrence of an element of typeU
, returning the prefix and suffix as a pair.Splits this
HList
at the first occurrence of an element of typeU
, returning the prefix and suffix as a pair. An explicit type argument must be provided. Available only if there is evidence that thisHList
has an element of typeU
. - def splitLeftP[U](implicit split: SplitLeft[L, U]): ::[Prefix, ::[Suffix, HNil]]
- def splitP(n: Nat)(implicit split: Split[L, N]): ::[Prefix, ::[Suffix, HNil]]
- def splitP[N <: Nat](implicit split: Split[L, N]): ::[Prefix, ::[Suffix, HNil]]
-
def
splitRight[U](implicit split: SplitRight[L, U]): (Prefix, Suffix)
Splits this
HList
at the last occurrence of an element of typeU
, returning the prefix and suffix as a pair.Splits this
HList
at the last occurrence of an element of typeU
, returning the prefix and suffix as a pair. An explicit type argument must be provided. Available only if there is evidence that thisHList
has an element of typeU
. - def splitRightP[U](implicit split: SplitRight[L, U]): ::[Prefix, ::[Suffix, HNil]]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
tail(implicit c: IsHCons[L]): T
Returns the tail of this
HList
.Returns the tail of this
HList
. Available only if there is evidence that thisHList
is composite. -
def
take(n: Nat)(implicit take: Take[L, N]): Out
Returns the first n elements of this
HList
.Returns the first n elements of this
HList
. Available only if there is evidence that thisHList
has at least n elements. -
def
take[N <: Nat](implicit take: Take[L, N]): Out
Returns the first n elements of this
HList
.Returns the first n elements of this
HList
. An explicit type argument must be provided. Available only if there is evidence that thisHList
has at least n elements. -
def
to[M[_]](implicit ts: ToTraversable[L, M]): Out
Converts this
HList
to aM
of elements typed as the least upper bound of the types of the elements of thisHList
. -
def
toArray[Lub](implicit toTraversableAux: Aux[L, Array, Lub]): (toTraversableAux)#Out
Converts this
HList
to anArray
of elements typed as the least upper bound of the types of the elements of thisHList
.Converts this
HList
to anArray
of elements typed as the least upper bound of the types of the elements of thisHList
.It is advisable to specify the type parameter explicitly, because for many reference types, case classes in particular, the inferred type will be too precise (ie.
Product with Serializable with CC
for a typical case classCC
) which interacts badly with the invariance ofArray
s. -
def
toCoproduct[M[_] <: Traversable[_]](implicit toCoproductTraversable: ToCoproductTraversable[L, M]): Out
Converts this
HList
to aM
of elements embedded in a minimalCoproduct
encompassing the types of every elements of thisHList
.Converts this
HList
to aM
of elements embedded in a minimalCoproduct
encompassing the types of every elements of thisHList
.For example :
(1 :: "qux" :: 42 :: "bar" :: HNil).toCoproduct[Vector]
Would return a Vector[Int :+: String :+: CNil]
Note that the
M
container must extendTraversable
, which means thatArray
cannot be used. -
def
toList[Lub](implicit toTraversableAux: Aux[L, List, Lub]): (toTraversableAux)#Out
Converts this
HList
to an ordinaryList
of elements typed as the least upper bound of the types of the elements of thisHList
. -
def
toSized[M[_]](implicit ts: ToSized[L, M]): Out
Converts this
HList
to a - sized -M
of elements typed as the least upper bound of the types of the elements of thisHList
. -
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
transpose(implicit transpose: Transposer[L]): Out
Transposes this
HList
. -
def
tupled(implicit tupler: Tupler[L]): ops.hlist.Tupler.Out
Converts this
HList
to a correspondingly typed tuple. -
def
unify(implicit unifier: Unifier[L]): Out
Returns an
HList
typed as a repetition of the least upper bound of the types of the elements of thisHList
. -
def
unifySubtypes[B](implicit subtypeUnifier: SubtypeUnifier[L, B]): Out
Returns an
HList
with all elements that are subtypes ofB
typed asB
. -
def
union[M <: HList](s: M)(implicit union: Union[L, M]): Out
Returns the union between this
HList
and anotherHList
.Returns the union between this
HList
and anotherHList
. In case of duplicate types, this operation is a order-preserving multi-set union. If typeT
appears n times in thisHList
and m > n times inM
, the resultingHList
contains the first n elements of typeT
in thisHList
, followed by the last m - n element of typeT
inM
. -
def
unzip(implicit unzipper: Unzip[L]): ops.hlist.Unzip.Out
Unzips this
HList
of tuples returning a tuple ofHList
s.Unzips this
HList
of tuples returning a tuple ofHList
s. Available only if there is evidence that thisHList
has tuple elements. -
def
updateAtWith[V](n: NatWith[[n]At[L, n]])(f: (ops.hlist.At.Out) ⇒ V)(implicit upd: ModifierAt[L, N, ops.hlist.At.Out, V]): ops.hlist.ModifierAt.Out
Replaces the
N
th element of thisHList
with the result of calling the supplied function on it.Replaces the
N
th element of thisHList
with the result of calling the supplied function on it. Available only if there is evidence that thisHList
hasN
elements. -
def
updateWith[U, V, Out <: HList](f: (U) ⇒ V)(implicit replacer: Aux[L, U, V, (U, Out)]): Out
Replaces the first element of type
U
of thisHList
with the result of its transformation to aV
via the supplied function.Replaces the first element of type
U
of thisHList
with the result of its transformation to aV
via the supplied function. Available only if there is evidence that thisHList
has an element of typeU
. -
def
updatedAt[U, V, Out <: HList](n: Nat, u: U)(implicit replacer: Aux[L, N, U, (V, Out)]): Out
Replaces the nth' element of this
HList
with the supplied value of typeU
. Available only if there is evidence that thisHList
has at least n elements. -
def
updatedAt[N <: Nat]: UpdatedAtAux[N]
Replaces the nth' element of this
HList
with the supplied value of typeU
. An explicit type argument must be provided forN
. Available only if there is evidence that thisHList
has at least n elements. -
def
updatedElem[U, Out <: HList](u: U)(implicit replacer: Aux[L, U, U, (U, Out)]): Out
Replaces the first element of type
U
of thisHList
with the supplied value, also of typeU
.Replaces the first element of type
U
of thisHList
with the supplied value, also of typeU
. Available only if there is evidence that thisHList
has an element of typeU
.The
Elem
suffix is here to avoid creating an ambiguity with RecordOps#updated and should be removed if SI-5414 is resolved in a way which eliminates the ambiguity. -
def
updatedType[U]: UpdatedTypeAux[U]
Replaces the first element of type
U
of thisHList
with the supplied value of typeV
.Replaces the first element of type
U
of thisHList
with the supplied value of typeV
. An explicit type argument must be provided forU
. Available only if there is evidence that thisHList
has an element of typeU
. -
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
zip(implicit zipper: Zip[L]): Out
Zips this
HList
ofHList
s returning anHList
of tuples.Zips this
HList
ofHList
s returning anHList
of tuples. Available only if there is evidence that thisHList
hasHList
elements. -
def
zip[R <: HList](r: R)(implicit zipper: Zip[::[L, ::[R, HNil]]]): Out
Zips this
HList
with its argumentHList
returning anHList
of pairs. -
def
zipApply[A <: HList](a: A)(implicit zipper: ZipApply[L, A]): Out
Zips this
HList
of monomorphic function values with its argumentHList
of correspondingly typed function arguments returning the result of each application as anHList
.Zips this
HList
of monomorphic function values with its argumentHList
of correspondingly typed function arguments returning the result of each application as anHList
. Available only if there is evidence that the corresponding function and argument elements have compatible types. -
def
zipConst[C](c: C)(implicit zipConst: ZipConst[C, L]): Out
Zips this
HList
with a constant, resulting in anHList
of tuples of the form ({element from thisHList
}, {supplied constant}) -
def
zipOne[T <: HList](t: T)(implicit zipOne: ZipOne[L, T]): Out
Zips this
HList
with its argumentHList
ofHList
s, returning anHList
ofHList
s with each element of thisHList
prepended to the correspondingHList
element of the argumentHList
. -
def
zipWith[R <: HList, P <: Poly2](r: R)(p: P)(implicit zipWith: ZipWith[L, R, P]): Out
Zips this 'HList' with its argument 'HList' using argument 'Poly2', returning an 'HList'.
Zips this 'HList' with its argument 'HList' using argument 'Poly2', returning an 'HList'. Doesn't require this to be the same length as its 'HList' argument, but does require evidence that its 'Poly2' argument is defined at their intersection.
-
def
zipWithIndex(implicit zipWithIndex: ZipWithIndex[L]): Out
Zips this
HList
with its element indices, resulting in a 'HList' of tuples of the form ({element from input tuple}, {element index}) -
def
zipWithKeys[K <: HList](implicit withKeys: ZipWithKeys[K, L]): Out
Converts this
HList
of values into a record with given keys.Converts this
HList
of values into a record with given keys. A type argument must be provided. -
def
zipWithKeys[K <: HList](keys: K)(implicit withKeys: ZipWithKeys[K, L]): Out
Converts this
HList
of values into a record with the provided keys.
Deprecated Value Members
-
def
unzipped(implicit unzipper: Unzip[L]): ops.hlist.Unzip.Out
Unzips this
HList
of tuples returning a tuple ofHList
s.Unzips this
HList
of tuples returning a tuple ofHList
s. Available only if there is evidence that thisHList
has tuple elements.- Annotations
- @deprecated
- Deprecated
(Since version 2.0.0) Use unzip instead
-
def
zipped(implicit zipper: Zip[L]): Out
Zips this
HList
ofHList
s returning anHList
of tuples.Zips this
HList
ofHList
s returning anHList
of tuples. Available only if there is evidence that thisHList
hasHList
elements.- Annotations
- @deprecated
- Deprecated
(Since version 2.0.0) Use zip instead