Tuple
extends ObjectSupertypes
ObjectMembers
Concat
= FIXME: MatchType supportType of the concatenation of two tuples
Type of the concatenation of two tuples
Drop
= FIXME: MatchType supportTransforms a tuple (T1, ..., Tn)
into (Ti+1, ..., Tn)
.
Transforms a tuple (T1, ..., Tn)
into (Ti+1, ..., Tn)
.
Elem
= FIXME: MatchType supportType of the element a position N in the tuple X
Type of the element a position N in the tuple X
Filter
= FIXME: MatchType supportFilters out those members of the tuple for which the predicate P
returns false
.
A predicate P[X]
is a type that can be either true
or false
. For exampl...
Filters out those members of the tuple for which the predicate P
returns false
.
A predicate P[X]
is a type that can be either true
or false
. For example:
type IsString[x] = x match {
case String => true
case _ => false
}
Filter[(1, "foo", 2, "bar"), IsString] =:= ("foo", "bar")
FlatMap
= FIXME: MatchType supportConverts a tuple (T1, ..., Tn)
to a flattened (..F[T1], ..., ..F[Tn])
Converts a tuple (T1, ..., Tn)
to a flattened (..F[T1], ..., ..F[Tn])
Fold
= FIXME: MatchType supportFold a tuple (T1, ..., Tn)
into F[T1, F[... F[Tn, Z]...]]]
Fold a tuple (T1, ..., Tn)
into F[T1, F[... F[Tn, Z]...]]]
Head
= FIXME: MatchType supportType of the head of a tuple
Type of the head of a tuple
InverseMap
= FIXME: MatchType supportConverts a tuple (F[T1], ..., F[Tn])
to (T1, ... Tn)
Converts a tuple (F[T1], ..., F[Tn])
to (T1, ... Tn)
IsMappedBy
= =:=[X,Map[InverseMap[X,F],F]]Implicit evidence. IsMappedBy[F][X] is present in the implicit scope iff
X is a tuple for which each element's type is constructed via F
. E.g.
(F[A1], ..., F[An]
Implicit evidence. IsMappedBy[F][X] is present in the implicit scope iff
X is a tuple for which each element's type is constructed via F
. E.g.
(F[A1], ..., F[An]), but not (F[A1], B2, ..., F[An])
where B2 does not
have the shape of F[A]
.
Map
= FIXME: MatchType supportConverts a tuple (T1, ..., Tn)
to (F[T1], ..., F[Tn])
Converts a tuple (T1, ..., Tn)
to (F[T1], ..., F[Tn])
Size
= FIXME: MatchType supportLiteral constant Int size of a tuple
Literal constant Int size of a tuple
Split
= ( Take[T,N], Drop[T,N] )Splits a tuple (T1, ..., Tn) into a pair of two tuples (T1, ..., Ti)
and
(Ti+1, ..., Tn)
.
Splits a tuple (T1, ..., Tn) into a pair of two tuples (T1, ..., Ti)
and
(Ti+1, ..., Tn)
.
Tail
= FIXME: MatchType supportType of the tail of a tuple
Type of the tail of a tuple
Take
= FIXME: MatchType supportTransforms a tuple (T1, ..., Tn)
into (T1, ..., Ti)
.
Transforms a tuple (T1, ..., Tn)
into (T1, ..., Ti)
.
Union
= Fold[T,Nothing,x | y]Given a tuple (T1, ..., Tn)
, returns a union of its
member types: T1 | ... | Tn
. Returns Nothing
if the tuple is empty.
Given a tuple (T1, ..., Tn)
, returns a union of its
member types: T1 | ... | Tn
. Returns Nothing
if the tuple is empty.
Widen
= FIXME: MatchType supportUse this type to widen a self-type to a tuple. E.g.
Use this type to widen a self-type to a tuple. E.g.
val x: (1, 3) = (1, 3)
val y: Widen[x.type] = x
Zip
= FIXME: MatchType supportGiven two tuples, A1 *: ... *: An * At
and B1 *: ... *: Bn *: Bt
where at least one of At
or Bt
is EmptyTuple
or Tuple
,
returns the tuple type (A1, B1)...
Given two tuples, A1 *: ... *: An * At
and B1 *: ... *: Bn *: Bt
where at least one of At
or Bt
is EmptyTuple
or Tuple
,
returns the tuple type (A1, B1) *: ... *: (An, Bn) *: Ct
where Ct
is EmptyTuple
if At
or Bt
is EmptyTuple
, otherwise Ct
is Tuple
.
apply
( ) : EmptyTupleEmpty tuple
Empty tuple
fromArray
[T] ( xs: Array[T] ) : TupleConvert an array into a tuple of unknown arity and types
Convert an array into a tuple of unknown arity and types
fromIArray
[T] ( xs: IArray[T] ) : TupleConvert an immutable array into a tuple of unknown arity and types
Convert an immutable array into a tuple of unknown arity and types
fromProduct
( product: Product ) : TupleConvert a Product into a tuple of unknown arity and types
Convert a Product into a tuple of unknown arity and types
fromProductTyped
[P] ( p: P ) ( implicit m: ProductOf[P] ) :unapply
( x: EmptyTuple ) : [31mtrue[0mMatches an empty tuple.
Matches an empty tuple.