object Functors extends CompositeFunctors
Functor and Traverse typeclasses for Tuples, HLists and Compositions of Functors, and for Constant functors.
To work around ambiguity in inference, for example
so that the type of iterated triples is interpreted as
III(A) = (II(A), Id(A))
, not III(A) = ((A, A), A)
several functors are explicitly named with the appropriate structure.
- Alphabetic
- By Inheritance
- Functors
- CompositeFunctors
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- type C[A, X] = X
constant functor
X
- type Coded[A] = (S[A], IL[A])
triple
(String, (Int(A), List(A)))
- type HN[A] = HNil
Constant
HNil
functor - type II[A] = (Id[A], Id[A])
Identity product itself
- type III[A] = (II[A], Id[A])
triple
(Id(A), (Id(A), Id(A)))
- type IIIV[A] = (Id[A], IIV[A])
4-tuple
(Id(A), (Id(A), (Id(A), Vector(A))))
- type IIV[A] = (Id[A], IV[A])
triple
(Id(A), (Id(A), Vector(A)))
- type IL[A] = (Id[A], List[A])
Identity product with List
- type IV[A] = (Id[A], Vector[A])
Identity product Vector
- type IVI[A] = (Id[A], VI[A])
triple
(Id(A), (Vector(A), Id(A)))
- type IVIIV[A] = (Id[A], VIIV[A])
5-tuple
(Id(A), (Vector(A), (Id(A), (Id(A), Vector(A)))))
- type IdHN[A] = ::[Id[A], HN[A]]
Identity
productHNil
- type IdIdHN[A] = ::[Id[A], IdHN[A]]
Pair of
Identity
functors productHNil
- type IdIdIdHN[A] = ::[Id[A], IdIdHN[A]]
Three copies of
Identity
Functor productHNil
- type In[A] = Int
Constant
Int
functor - type InHN[A] = ::[In[A], HN[A]]
Product of
Int
withHNil
- type LL[A] = (List[A], List[A])
pair of Lists
- type N[A] = Int
constant
Int
functor - type Named[A] = (S[A], Id[A])
Functor identity with a name
- type Numbered[A] = (N[A], Id[A])
- type Pickled = (S[String], IL[String])
- type S[A] = String
constant
String
functor - type SV[A] = (S[A], Vector[A])
pair
(String, Vector(A))
- type SVI[A] = (S[A], VI[A])
triple
(String, (Vector(A), Id(A)))
- type SVII[A] = (S[A], VII[A])
4-tuple
(String, (Vector(A), (Id(A), Id(A))))
- type SVO[A] = (S[A], VO[A])
triple
(String, (Vector(A), Option(A)))
- type St[A] = String
Constant
String
Functor - type StHN[A] = ::[St[A], HN[A]]
String product with
HNil
- type StIdHN[A] = ::[St[A], IdHN[A]]
Triple
(String, (A, HNil))
- type StIntHN[A] = ::[St[A], InHN[A]]
triple
(String, (Int, HNil))
- type Un[A] = Unit
constant
Unit
functor - type VI[A] = (Vector[A], Id[A])
Vector product Identity
- type VII[A] = (Vector[A], II[A])
triple
(Vector(A), (Id(A), Id(A)))
- type VIIV[A] = (Vector[A], IIV[A])
4-tuple
(Vector(A), (Id(A), (Id(A), Vector(A))))
- type VIVIIV[A] = (Vector[A], IVIIV[A])
- type VO[A] = (Vector[A], Option[A])
Vector product Option
- type VV[A] = (Vector[A], Vector[A])
pair of Vectors
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- implicit def augmentedFunctor[Cn, X[_]](implicit arg0: Functor[X]): Functor[[A](Cn, X[A])]
functor by product with a constant functor
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- implicit def composeFunctors[X[_], Y[_]](implicit arg0: Functor[X], arg1: Functor[Y]): Functor[[A]X[Y[A]]]
composition of functors is a functor
- implicit def constantFunctor[Cn]: Functor[[A]Cn]
constant functor
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def liftMap[A, B, F[_]](fa: F[A], f: (A) => B)(implicit arg0: Functor[F]): F[B]
induced map, should use cats syntax instead
- implicit val namedTrav: Traverse[Named]
Traverse type class for identity with name
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- implicit val numberedTrav: Traverse[Numbered]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- implicit def t2[X[_], Y[_]](implicit arg0: Functor[X], arg1: Functor[Y]): Functor[[A](X[A], Y[A])]
functor for pairs
- def toString(): String
- Definition Classes
- AnyRef → Any
- implicit def trCnst[X]: Traverse[[A]X]
Traverse typeclass for Constant functors
- implicit def trCod: Traverse[Coded]
- implicit def traverseCompose[X[_], Y[_]](implicit arg0: Traverse[X], arg1: Traverse[Y]): Traverse[[A]X[Y[A]]]
Traverse type class for composition
Traverse type class for composition
- Definition Classes
- CompositeFunctors
- implicit def traverseEquiv[F[_], Y[_]](implicit equiv: Equiv[F, Y], TY: Traverse[Y]): Traverse[F]
Traverse class induced by equivalence of Functors
- implicit def traverseHCons[X[_], Y[_] <: HList](implicit tx: Lazy[Traverse[X]], YT: Traverse[Y]): Traverse[[A]::[X[A], Y[A]]]
Travese typeclass for
HCons
Travese typeclass for
HCons
- Definition Classes
- CompositeFunctors
- implicit def traversePair[X[_], Y[_]](implicit arg0: Traverse[X], arg1: Traverse[Y]): Traverse[[A](X[A], Y[A])]
traverse class for pairs
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated