ChaseBwRes

libretto.lambda.Shuffle.~⚬.ChaseBwRes
See theChaseBwRes companion object
sealed trait ChaseBwRes[A, G[_], X]

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Split[A, G, X, X1, X2]
class Transported[A, F, G, X]

Members list

Value members

Abstract methods

infix def after[Z](f: Z ~⚬ A): ChaseBwRes[Z, G, X]
infix def afterAssocLR[A1, A2, A3](using (A2 |*| A3) =:= A): ChaseBwRes[A1 |*| A2 |*| A3, [x] =>> A1 |*| G[x], X]
infix def afterAssocRL[A1, A2, A3](using (A1 |*| A2) =:= A): ChaseBwRes[A1 |*| (A2 |*| A3), [x] =>> G[x] |*| A3, X]
infix def afterIX[A1, A2, A3](using (A1 |*| A3) =:= A): ChaseBwRes[A1 |*| A2 |*| A3, [x] =>> G[x] |*| A2, X]
infix def afterIXI1[A1, A2, A3, A4](using (A1 |*| A3) =:= A): ChaseBwRes[A1 |*| A2 |*| (A3 |*| A4), [x] =>> G[x] |*| (A2 |*| A4), X]
infix def afterIXI2[A1, A2, A3, A4](using (A2 |*| A4) =:= A): ChaseBwRes[A1 |*| A2 |*| (A3 |*| A4), [x] =>> A1 |*| A3 |*| G[x], X]
infix def afterXI[A1, A2, A3](using (A1 |*| A3) =:= A): ChaseBwRes[A1 |*| (A2 |*| A3), [x] =>> A2 |*| G[x], X]
infix def andThen[H[_]](H: Focus[|*|, H], h: [x] => DummyImplicit ?=> G[x] ~⚬ H[x]): ChaseBwRes[A, H, X]
def inFst[B, C](snd: B ~⚬ C): ChaseBwRes[A |*| B, [x] =>> G[x] |*| C, X]
def inSnd[Y, Z](fst: Y ~⚬ Z): ChaseBwRes[Y |*| A, [x] =>> Z |*| G[x], X]

Concrete methods

infix def andThen[H[_]](h: Punched[G, H]): ChaseBwRes[A, H, X]
def inFst[B]: ChaseBwRes[A |*| B, [x] =>> G[x] |*| B, X]
def inSnd[Z]: ChaseBwRes[Z |*| A, [x] =>> Z |*| G[x], X]