trait IsomorphismBitraverse[F[_, _], G[_, _]] extends Bitraverse[F] with IsomorphismBifunctor[F, G] with IsomorphismBifoldable[F, G]
- Source
- Isomorphism.scala
- Alphabetic
- By Inheritance
- IsomorphismBitraverse
- IsomorphismBifoldable
- IsomorphismBifunctor
- Bitraverse
- Bifoldable
- Bifunctor
- BifunctorParent
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- trait BifoldableLaw extends AnyRef
- Definition Classes
- Bifoldable
- class Bitraversal[G[_]] extends AnyRef
- Definition Classes
- Bitraverse
Abstract Value Members
- implicit abstract def G: Bitraverse[G]
- Definition Classes
- IsomorphismBitraverse → IsomorphismBifoldable → IsomorphismBifunctor
- abstract def iso: Isomorphism.<~~>[F, G]
- Definition Classes
- IsomorphismBifunctor
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##(): Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- final def biNaturalTrans: ~~>[F, G]
- Attributes
- protected[this]
- Definition Classes
- IsomorphismBitraverse → IsomorphismBifoldable
- final def bifoldL[A, B, C](fa: F[A, B], z: C)(f: (C) ⇒ (A) ⇒ C)(g: (C) ⇒ (B) ⇒ C): C
Curried version of
bifoldLeft
Curried version of
bifoldLeft
- Definition Classes
- Bifoldable
- def bifoldLShape[A, B, C](fa: F[A, B], z: C)(f: (C, A) ⇒ C)(g: (C, B) ⇒ C): (C, F[Unit, Unit])
- Definition Classes
- Bitraverse
- final def bifoldLeft[A, B, C](fa: F[A, B], z: C)(f: (C, A) ⇒ C)(g: (C, B) ⇒ C): C
bifoldRight
, but defined to run in the opposite direction.bifoldRight
, but defined to run in the opposite direction.- Definition Classes
- IsomorphismBifoldable → Bifoldable
- final def bifoldMap[A, B, M](fab: F[A, B])(f: (A) ⇒ M)(g: (B) ⇒ M)(implicit arg0: Monoid[M]): M
Accumulate
A
s andB
sAccumulate
A
s andB
s- Definition Classes
- IsomorphismBifoldable → Bifoldable
- def bifoldMap1[A, B, M](fa: F[A, B])(f: (A) ⇒ M)(g: (B) ⇒ M)(implicit F: Semigroup[M]): Option[M]
- Definition Classes
- Bifoldable
- final def bifoldR[A, B, C](fa: F[A, B], z: ⇒ C)(f: (A) ⇒ (⇒ C) ⇒ C)(g: (B) ⇒ (⇒ C) ⇒ C): C
Curried version of
bifoldRight
Curried version of
bifoldRight
- Definition Classes
- Bifoldable
- final def bifoldRight[A, B, C](fab: F[A, B], z: ⇒ C)(f: (A, ⇒ C) ⇒ C)(g: (B, ⇒ C) ⇒ C): C
Accumulate to
C
starting at the "right".Accumulate to
C
starting at the "right".f
andg
may be interleaved.- Definition Classes
- IsomorphismBifoldable → Bifoldable
- def bifoldableLaw: BifoldableLaw
- Definition Classes
- Bifoldable
- val bifoldableSyntax: BifoldableSyntax[F]
- Definition Classes
- Bifoldable
- val bifunctorSyntax: BifunctorSyntax[F]
- Definition Classes
- Bifunctor
- def bimap[A, B, C, D](fab: F[A, B])(f: (A) ⇒ C, g: (B) ⇒ D): F[C, D]
map
over both type parameters.map
over both type parameters.- Definition Classes
- IsomorphismBifunctor → Bifunctor
- def bisequence[G[_], A, B](x: F[G[A], G[B]])(implicit arg0: Applicative[G]): G[F[A, B]]
- Definition Classes
- Bitraverse
- def bitraversal[G[_]](implicit arg0: Applicative[G]): Bitraversal[G]
- Definition Classes
- Bitraverse
- def bitraversalS[S]: Bitraversal[[β$2$]IndexedStateT[[X]X, S, S, β$2$]]
- Definition Classes
- Bitraverse
- def bitraverse[G[_], A, B, C, D](fa: F[A, B])(f: (A) ⇒ G[C])(g: (B) ⇒ G[D])(implicit arg0: Applicative[G]): G[F[C, D]]
- Definition Classes
- Bitraverse
- def bitraverseF[G[_], A, B, C, D](f: (A) ⇒ G[C], g: (B) ⇒ G[D])(implicit arg0: Applicative[G]): (F[A, B]) ⇒ G[F[C, D]]
Flipped
bitraverse
.Flipped
bitraverse
.- Definition Classes
- Bitraverse
- def bitraverseImpl[H[_], A, B, C, D](fab: F[A, B])(f: (A) ⇒ H[C], g: (B) ⇒ H[D])(implicit arg0: Applicative[H]): H[F[C, D]]
Collect
G
s while applyingf
andg
in some order.Collect
G
s while applyingf
andg
in some order.- Definition Classes
- IsomorphismBitraverse → Bitraverse
- def bitraverseKTrampoline[S, G[_], A, B, C, D](fa: F[A, B])(f: (A) ⇒ Kleisli[G, S, C])(g: (B) ⇒ Kleisli[G, S, D])(implicit arg0: Applicative[G]): Kleisli[G, S, F[C, D]]
Bitraverse
fa
with aKleisli[G, S, C]
andKleisli[G, S, D]
, internally using aTrampoline
to avoid stack overflow.Bitraverse
fa
with aKleisli[G, S, C]
andKleisli[G, S, D]
, internally using aTrampoline
to avoid stack overflow.- Definition Classes
- Bitraverse
- def bitraverseS[S, A, B, C, D](fa: F[A, B])(f: (A) ⇒ State[S, C])(g: (B) ⇒ State[S, D]): State[S, F[C, D]]
- Definition Classes
- Bitraverse
- val bitraverseSyntax: BitraverseSyntax[F]
- Definition Classes
- Bitraverse
- def clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws(classOf[java.lang.CloneNotSupportedException])
- def compose[G[_, _]](implicit G0: Bitraverse[G]): Bitraverse[[α, β]F[G[α, β], G[α, β]]]
The composition of Bitraverses
F
andG
,[x,y]F[G[x,y],G[x,y]]
, is a BitraverseThe composition of Bitraverses
F
andG
,[x,y]F[G[x,y],G[x,y]]
, is a Bitraverse- Definition Classes
- Bitraverse
- def compose[G[_, _]](implicit G0: Bifoldable[G]): Bifoldable[[α, β]F[G[α, β], G[α, β]]]
The composition of Bifoldables
F
andG
,[x,y]F[G[x,y],G[x,y]]
, is a BifoldableThe composition of Bifoldables
F
andG
,[x,y]F[G[x,y],G[x,y]]
, is a Bifoldable- Definition Classes
- Bifoldable
- def compose[G[_, _]](implicit G0: Bifunctor[G]): Bifunctor[[α, β]F[G[α, β], G[α, β]]]
The composition of Bifunctors
F
andG
,[x,y]F[G[x,y],G[x,y]]
, is a BifunctorThe composition of Bifunctors
F
andG
,[x,y]F[G[x,y],G[x,y]]
, is a Bifunctor- Definition Classes
- Bifunctor
- def embed[G[_], H[_]](implicit G0: Traverse[G], H0: Traverse[H]): Bitraverse[[α, β]F[G[α], H[β]]]
Embed a Traverse on each side of this Bitraverse .
Embed a Traverse on each side of this Bitraverse .
- Definition Classes
- Bitraverse
- def embed[G[_], H[_]](implicit G0: Foldable[G], H0: Foldable[H]): Bifoldable[[α, β]F[G[α], H[β]]]
Embed one Foldable at each side of this Bifoldable
Embed one Foldable at each side of this Bifoldable
- Definition Classes
- Bifoldable
- def embed[G[_], H[_]](implicit G0: Functor[G], H0: Functor[H]): Bifunctor[[α, β]F[G[α], H[β]]]
Embed two Functors , one on each side
Embed two Functors , one on each side
- Definition Classes
- Bifunctor
- def embedLeft[G[_]](implicit G0: Traverse[G]): Bitraverse[[α, β]F[G[α], β]]
Embed a Traverse on the left side of this Bitraverse .
Embed a Traverse on the left side of this Bitraverse .
- Definition Classes
- Bitraverse
- def embedLeft[G[_]](implicit G0: Foldable[G]): Bifoldable[[α, β]F[G[α], β]]
Embed one Foldable to the left of this Bifoldable .
Embed one Foldable to the left of this Bifoldable .
- Definition Classes
- Bifoldable
- def embedLeft[G[_]](implicit G0: Functor[G]): Bifunctor[[α, β]F[G[α], β]]
Embed one Functor to the left
Embed one Functor to the left
- Definition Classes
- Bifunctor
- def embedRight[H[_]](implicit H0: Traverse[H]): Bitraverse[[α, β]F[α, H[β]]]
Embed a Traverse on the right side of this Bitraverse .
Embed a Traverse on the right side of this Bitraverse .
- Definition Classes
- Bitraverse
- def embedRight[H[_]](implicit H0: Foldable[H]): Bifoldable[[α, β]F[α, H[β]]]
Embed one Foldable to the right of this Bifoldable .
Embed one Foldable to the right of this Bifoldable .
- Definition Classes
- Bifoldable
- def embedRight[H[_]](implicit H0: Functor[H]): Bifunctor[[α, β]F[α, H[β]]]
Embed one Functor to the right
Embed one Functor to the right
- Definition Classes
- Bifunctor
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def leftFoldable[X]: Foldable[[α$0$]F[α$0$, X]]
Extract the Foldable on the first parameter.
Extract the Foldable on the first parameter.
- Definition Classes
- Bifoldable
- def leftFunctor[X]: Functor[[α$0$]F[α$0$, X]]
Extract the Functor on the first param.
Extract the Functor on the first param.
- Definition Classes
- Bifunctor
- def leftMap[A, B, C](fab: F[A, B])(f: (A) ⇒ C): F[C, B]
- Definition Classes
- Bifunctor
- def leftTraverse[X]: Traverse[[α$0$]F[α$0$, X]]
Extract the Traverse on the first param.
Extract the Traverse on the first param.
- Definition Classes
- Bitraverse
- 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 product[G[_, _]](implicit G0: Bitraverse[G]): Bitraverse[[α, β](F[α, β], G[α, β])]
The product of Bitraverses
F
andG
,[x,y](F[x,y], G[x,y])
, is a BitraverseThe product of Bitraverses
F
andG
,[x,y](F[x,y], G[x,y])
, is a Bitraverse- Definition Classes
- Bitraverse
- def product[G[_, _]](implicit G0: Bifoldable[G]): Bifoldable[[α, β](F[α, β], G[α, β])]
The product of Bifoldables
F
andG
,[x,y](F[x,y], G[x,y])
, is a BifoldableThe product of Bifoldables
F
andG
,[x,y](F[x,y], G[x,y])
, is a Bifoldable- Definition Classes
- Bifoldable
- def product[G[_, _]](implicit G0: Bifunctor[G]): Bifunctor[[α, β](F[α, β], G[α, β])]
The product of Bifunctors
F
andG
,[x,y](F[x,y], G[x,y])
, is a BifunctorThe product of Bifunctors
F
andG
,[x,y](F[x,y], G[x,y])
, is a Bifunctor- Definition Classes
- Bifunctor
- def rightFoldable[X]: Foldable[[β$1$]F[X, β$1$]]
Extract the Foldable on the second parameter.
Extract the Foldable on the second parameter.
- Definition Classes
- Bifoldable
- def rightFunctor[X]: Functor[[β$1$]F[X, β$1$]]
Extract the Functor on the second param.
Extract the Functor on the second param.
- Definition Classes
- Bifunctor
- def rightMap[A, B, D](fab: F[A, B])(g: (B) ⇒ D): F[A, D]
- Definition Classes
- Bifunctor
- def rightTraverse[X]: Traverse[[β$1$]F[X, β$1$]]
Extract the Traverse on the second param.
Extract the Traverse on the second param.
- Definition Classes
- Bitraverse
- def runBitraverseS[S, A, B, C, D](fa: F[A, B], s: S)(f: (A) ⇒ State[S, C])(g: (B) ⇒ State[S, D]): (S, F[C, D])
- Definition Classes
- Bitraverse
- final def synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def traverseSTrampoline[S, G[_], A, B, C, D](fa: F[A, B])(f: (A) ⇒ State[S, G[C]])(g: (B) ⇒ State[S, G[D]])(implicit arg0: Applicative[G]): State[S, G[F[C, D]]]
Bitraverse
fa
with aState[S, G[C]]
andState[S, G[D]]
, internally using aTrampoline
to avoid stack overflow.Bitraverse
fa
with aState[S, G[C]]
andState[S, G[D]]
, internally using aTrampoline
to avoid stack overflow.- Definition Classes
- Bitraverse
- def uFoldable: Foldable[[α]F[α, α]]
Unify the foldable over both params.
Unify the foldable over both params.
- Definition Classes
- Bifoldable
- def uFunctor: Functor[[α]F[α, α]]
Unify the functor over both params.
Unify the functor over both params.
- Definition Classes
- Bifunctor
- def uTraverse: Traverse[[α]F[α, α]]
Unify the traverse over both params.
Unify the traverse over both params.
- Definition Classes
- Bitraverse
- def umap[A, B](faa: F[A, A])(f: (A) ⇒ B): F[B, B]
- Definition Classes
- Bifunctor
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws(classOf[java.lang.InterruptedException])
- def widen[A, B, C >: A, D >: B](fab: F[A, B]): F[C, D]
Bifunctors are covariant by nature
Bifunctors are covariant by nature
- Definition Classes
- BifunctorParent