XI
libretto.lambda.Shuffled.Plated.XI
case class XI[A1, A2, P1, P2, Q, R, S1, S2, B1, B2](l: Plated[A2, P1 |*| P2], lt: RevTransferOpt[P1, P2, B1, Q], b: Q shuffle.~⚬ R, rt: shuffle.TransferOpt[A1, R, S1, S2], r: Plated[S1 |*| S2, B2]) extends BiInput[A1, A2, B1 |*| B2], BiOutput[A1 |*| A2, B1, B2]
Attributes
- Graph
-
- Supertypes
Members list
Value members
Concrete methods
override def chaseBwFst[G[_], X](i: Focus[|*|, G])(using ev: B1 =:= G[X]): Blocked[A1 |*| A2, [x] =>> G[x] |*| B2, X]
Attributes
- Definition Classes
override def chaseBwSnd[G[_], X](i: Focus[|*|, G])(using B2 =:= G[X]): Blocked[A1 |*| A2, [x] =>> B1 |*| G[x], X]
Attributes
- Definition Classes
override def chaseFwFst[F[_], X](i: Focus[|*|, F])(using ev: A1 =:= F[X]): Blocked[[x] =>> F[x] |*| A2, X, B1 |*| B2]
Attributes
- Definition Classes
override def chaseFwSnd[F[_], X](i: Focus[|*|, F])(using ev: A2 =:= F[X]): Blocked[[x] =>> A1 |*| F[x], X, B1 |*| B2]
Attributes
- Definition Classes
override def discardFst(f: [X, Y, Z] => (x$1: X -> Y, x$2: Projection[|*|, Y, Z]) => ProjectRes[X, Z]): ProjectRes[A1 |*| A2, B2]
Attributes
- Definition Classes
override def discardSnd(f: [X, Y, Z] => (x$1: X -> Y, x$2: Projection[|*|, Y, Z]) => ProjectRes[X, Z]): ProjectRes[A1 |*| A2, B1]
Attributes
- Definition Classes
override def foldMap[->>[_, _]](tr: [x, y] => (x$1: x -> y) => ->>[x, y])(using ev: SymmetricSemigroupalCategory[->>, |*|]): (A1 |*| A2) ->> (B1 |*| B2)
Attributes
- Definition Classes
override def projectFst[C](p: Proper[|*|, B1, C], f: [X, Y, Z] => (x$1: X -> Y, x$2: Projection[|*|, Y, Z]) => ProjectRes[X, Z]): ProjectRes[A1 |*| A2, C |*| B2]
Attributes
- Definition Classes
override def projectSnd[C](p: Proper[|*|, B2, C], f: [X, Y, Z] => (x$1: X -> Y, x$2: Projection[|*|, Y, Z]) => ProjectRes[X, Z]): ProjectRes[A1 |*| A2, B1 |*| C]
Attributes
- Definition Classes
override def sweepL[F[_], ->>[_, _]](fa: F[A1 |*| A2], f: [t, u] => (x$1: F[t], x$2: t -> u) => (->>[t, u], F[u]))(using tgt: With[->>, |*|, shuffle.type], F: StrongZippable[|*|, F]): (tgt.Plated[A1 |*| A2, B1 |*| B2], F[B1 |*| B2])
Attributes
- Definition Classes
Attributes
- Definition Classes
override def traverse[G[_] : Applicative, ->>[_, _]](f: [t, u] => (x$1: t -> u) => G[->>[t, u]])(implicit evidence$1: Applicative[G], tgt: With[->>, |*|, shuffle.type]): G[tgt.Plated[A1 |*| A2, B1 |*| B2]]
Attributes
- Definition Classes
Attributes
- Definition Classes
Inherited methods
Attributes
- Inherited from:
- Plated
Attributes
- Inherited from:
- Plated
Attributes
- Inherited from:
- Plated
Attributes
- Inherited from:
- Plated
Attributes
- Inherited from:
- Product
Attributes
- Inherited from:
- Product
def project[C](p: Projection[|*|, B1 |*| B2, C], f: [X, Y, Z] => (x$1: X -> Y, x$2: Projection[|*|, Y, Z]) => ProjectRes[X, Z]): ProjectRes[A1 |*| A2, C]
Attributes
- Inherited from:
- Plated
final override def projectProper[C](p: Proper[|*|, B1 |*| B2, C], f: [X, Y, Z] => (x$1: X -> Y, x$2: Projection[|*|, Y, Z]) => ProjectRes[X, Z]): ProjectRes[A1 |*| A2, C]
Attributes
- Inherited from:
- Plated
In this article