IX

libretto.lambda.Shuffle.Transfer.IX
case class IX[A1, A2, A3, B1, B2](g: TransferOpt[A1, A3, B1, B2]) extends Transfer[A1 |*| A2, A3, B1 |*| B2, A2]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Transfer[A1 |*| A2, A3, B1 |*| B2, A2]
trait TransferOpt[A1 |*| A2, A3, B1 |*| B2, A2]
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

override def after[Z1, Z2](that: Transfer[Z1, Z2, A1 |*| A2, A3]): Z1 |*| Z2 ~⚬ B1 |*| B2 |*| A2

Attributes

Definition Classes
override def apply[F[_]](a: F[A1 |*| A2 |*| A3])(using F: StrongZippable[|*|, F]): F[B1 |*| B2 |*| A2]

Attributes

Definition Classes
override def assocLR_this_assocRL[X, Y1, Y2](h: AssocRL[X, B1 |*| B2, A2, Y1, Y2]): X |*| A1 |*| A2 |*| A3 ~⚬ Y1 |*| Y2 |*| A2

Attributes

Definition Classes
override def assocLR_this_ixi[P1, P2, Q1, Q2, Q3, Q4](that: IXI[P1, P2, B1 |*| B2, A2, Q1, Q2, Q3, Q4]): P1 |*| P2 |*| A1 |*| A2 |*| A3 ~⚬ Q1 |*| Q2 |*| Q3 |*| Q4

Attributes

Definition Classes
override def assocLR_this_xi[X, Y2, Y3](h: XI[X, B1 |*| B2, A2, Y2, Y3]): X |*| A1 |*| A2 |*| A3 ~⚬ B1 |*| B2 |*| Y2 |*| Y3

Attributes

Definition Classes
override def assocRL_this_assocLR[X, Y2, Y3](h: AssocLR[B1 |*| B2, A2, X, Y2, Y3]): A1 |*| A2 |*| A3 |*| X ~⚬ B1 |*| B2 |*| Y2 |*| Y3

Attributes

Definition Classes
override def assocRL_this_ix[X, Y1, Y2](h: IX[B1 |*| B2, A2, X, Y1, Y2]): A1 |*| A2 |*| A3 |*| X ~⚬ Y1 |*| Y2 |*| A2

Attributes

Definition Classes
override def assocRL_this_ixi[X1, X2, Y1, Y2, Y3, Y4](h: IXI[B1 |*| B2, A2, X1, X2, Y1, Y2, Y3, Y4]): A1 |*| A2 |*| A3 |*| X1 |*| X2 ~⚬ Y1 |*| Y2 |*| Y3 |*| Y4

Attributes

Definition Classes
override def chaseBwFst[G[_], T](i: Focus[|*|, G])(using B1 |*| B2 =:= G[T]): ChaseBwRes[A1 |*| A2 |*| A3, [t] =>> G[t] |*| A2, T]

Attributes

Definition Classes
override def chaseBwSnd[G[_], T](i: Focus[|*|, G])(using ev: A2 =:= G[T]): ChaseBwRes[A1 |*| A2 |*| A3, [t] =>> B1 |*| B2 |*| G[t], T]

Attributes

Definition Classes
override def chaseFwFst[F[_], T](i: Focus[|*|, F])(using ev: F[T] =:= A1 |*| A2): ChaseFwRes[[t] =>> F[t] |*| A3, T, B1 |*| B2 |*| A2]

Attributes

Definition Classes
override def chaseFwSnd[F[_], T](i: Focus[|*|, F])(using F[T] =:= A3): ChaseFwRes[[t] =>> A1 |*| A2 |*| F[t], T, B1 |*| B2 |*| A2]

Attributes

Definition Classes
override def invert: Xfer[B1 |*| B2, A2, _, _, A1 |*| A2, A3]

Attributes

Definition Classes
override def ix_this_assocLR[X, Y2, Y3](that: AssocLR[B1 |*| B2, A2, X, Y2, Y3]): A1 |*| A2 |*| X |*| A3 ~⚬ B1 |*| B2 |*| Y2 |*| Y3

Attributes

Definition Classes
override def ix_this_ix[X, Y1, Y2](that: IX[B1 |*| B2, A2, X, Y1, Y2]): A1 |*| A2 |*| X |*| A3 ~⚬ Y1 |*| Y2 |*| A2

Attributes

Definition Classes
override def ix_this_ixi[P1, P2, Q1, Q2, Q3, Q4](that: IXI[B1 |*| B2, A2, P1, P2, Q1, Q2, Q3, Q4]): A1 |*| A2 |*| P1 |*| P2 |*| A3 ~⚬ Q1 |*| Q2 |*| Q3 |*| Q4

Attributes

Definition Classes
override def ixiPairWith_:[X1, X2, X3, X4, Y1, Y2, Y3, Y4](that: IXI[X1, X2, X3, X4, Y1, Y2, Y3, Y4]): BiTransferOpt[X1 |*| X2, X3 |*| X4, A1 |*| A2, A3, Y1 |*| Y2, Y3 |*| Y4, B1 |*| B2, A2]

Attributes

Definition Classes
override def ixi_fstThis_assocLR[P1, P2, Q1, Q2, R2, R3](g2: TransferOpt[P1, P2, Q1, Q2], that: AssocLR[B1 |*| B2, A2, Q1 |*| Q2, R2, R3]): A1 |*| A2 |*| P1 |*| A3 |*| P2 ~⚬ B1 |*| B2 |*| R2 |*| R3

Attributes

Definition Classes
override def ixi_sndThis_assocRL[P1, P2, Q1, Q2, R1, R2](g1: TransferOpt[P1, P2, Q1, Q2], that: AssocRL[Q1 |*| Q2, B1 |*| B2, A2, R1, R2]): P1 |*| A1 |*| A2 |*| P2 |*| A3 ~⚬ R1 |*| R2 |*| A2

Attributes

Definition Classes
override def ixi_sndThis_xi[P1, P2, Q1, Q2, R2, R3](g1: TransferOpt[P1, P2, Q1, Q2], that: XI[Q1 |*| Q2, B1 |*| B2, A2, R2, R3]): P1 |*| A1 |*| A2 |*| P2 |*| A3 ~⚬ B1 |*| B2 |*| R2 |*| R3

Attributes

Definition Classes
override def nonePairWith_:[X1, X2](that: None[X1, X2]): BiTransferOpt[X1, X2, A1 |*| A2, A3, X1, X2, B1 |*| B2, A2]

Attributes

Definition Classes
override def pairWith[X3, X4, Z1, Z2](that: TransferOpt[X3, X4, Z1, Z2]): BiTransferOpt[A1 |*| A2, A3, X3, X4, B1 |*| B2, A2, Z1, Z2]

Attributes

Definition Classes
override def swapPairWith_:[X1, X2](that: Swap[X1, X2]): BiTransferOpt[X1, X2, A1 |*| A2, A3, X2, X1, B1 |*| B2, A2]

Attributes

Definition Classes
override def thenAssocLR[D1, D2, C2, C3](that: AssocLR[D1, D2, A2, C2, C3])(using ev: B1 |*| B2 =:= D1 |*| D2): A1 |*| A2 |*| A3 ~⚬ D1 |*| C2 |*| C3

Attributes

Definition Classes
override def thenAssocRL[X1, X2, C1, C2](that: AssocRL[B1 |*| B2, X1, X2, C1, C2])(using ev: A2 =:= X1 |*| X2): A1 |*| A2 |*| A3 ~⚬ C1 |*| C2 |*| X2

Attributes

Definition Classes
override def thenBi[C1, C2](g1: B1 |*| B2 ~⚬ C1, g2: A2 ~⚬ C2): Xfer[A1 |*| A2, A3, _, _, C1, C2]

Attributes

Definition Classes
override def thenIX[B11, B12, C1, C2](that: IX[B11, B12, A2, C1, C2])(using ev: B1 |*| B2 =:= B11 |*| B12): A1 |*| A2 |*| A3 ~⚬ C1 |*| C2 |*| B12

Attributes

Definition Classes
override def thenIXI[B11, B12, B21, B22, C1, C2, C3, C4](that: IXI[B11, B12, B21, B22, C1, C2, C3, C4])(using ev1: B1 |*| B2 =:= B11 |*| B12, ev2: A2 =:= B21 |*| B22): A1 |*| A2 |*| A3 ~⚬ C1 |*| C2 |*| C3 |*| C4

Attributes

Definition Classes
override def thenSwap: A1 |*| A2 |*| A3 ~⚬ A2 |*| B1 |*| B2

Attributes

Definition Classes
override def thenXI[A21, A22, C2, C3](that: XI[B1 |*| B2, A21, A22, C2, C3])(using ev: A2 =:= A21 |*| A22): A1 |*| A2 |*| A3 ~⚬ A21 |*| C2 |*| C3

Attributes

Definition Classes
override def translateLR[<*>[_, _], F[_, _], S12, S3](fa12: F[A1 |*| A2, S12], fa3: F[A3, S3])(m: ObjectMap[|*|, <*>, F])(using tgt: Shuffle[<*>]): Exists[[T1] =>> Exists[[T2] =>> (TransferOpt[S12, S3, T1, T2], F[B1 |*| B2, T1], F[A2, T2])]]

Attributes

Definition Classes
override def translateRL[<*>[_, _], F[_, _], T1, T2](fb12: F[B1 |*| B2, T1], fa2: F[A2, T2])(m: ObjectMap[|*|, <*>, F])(using tgt: Shuffle[<*>]): Exists[[S1] =>> Exists[[S2] =>> (F[A1 |*| A2, S1], F[A3, S2], TransferOpt[S1, S2, T1, T2])]]

Attributes

Definition Classes
override def xi_this_assocRL[X, Y1, Y2](h: AssocRL[X, B1 |*| B2, A2, Y1, Y2]): A1 |*| A2 |*| X |*| A3 ~⚬ Y1 |*| Y2 |*| A2

Attributes

Definition Classes
override def xi_this_ixi[P1, P2, C1, C2, C3, C4](h: IXI[P1, P2, B1 |*| B2, A2, C1, C2, C3, C4]): A1 |*| A2 |*| P1 |*| P2 |*| A3 ~⚬ C1 |*| C2 |*| C3 |*| C4

Attributes

Definition Classes
override def xi_this_xi[X, C2, C3](h: XI[X, B1 |*| B2, A2, C2, C3]): A1 |*| A2 |*| X |*| A3 ~⚬ B1 |*| B2 |*| C2 |*| C3

Attributes

Definition Classes

Inherited methods

def >[C1, C2](that: Transfer[B1 |*| B2, A2, C1, C2]): A1 |*| A2 ~⚬ C1 |*| C2

Attributes

Inherited from:
Transfer
def asShuffle: A1 |*| A2 ~⚬ B1 |*| B2

Attributes

Inherited from:
TransferOpt
final override def chaseBw[G[_], T](i: Focus[|*|, G])(using ev: B1 |*| B2 |*| A2 =:= G[T]): ChaseBwRes[A1 |*| A2, G, T]

Attributes

Definition Classes
Inherited from:
Transfer
final override def chaseFw[F[_], T](i: Focus[|*|, F])(using ev: F[T] =:= A1 |*| A2 |*| A3): ChaseFwRes[F, T, B1 |*| B2]

Attributes

Definition Classes
Inherited from:
Transfer
override def fold[->[_, _]](using ev: SymmetricSemigroupalCategory[->, |*|]): A1 |*| A2 -> B1 |*| B2

Attributes

Definition Classes
Inherited from:
Transfer
def ixi_fstThis_ix[P1, P2, Q1, Q2, R1, R2](g2: TransferOpt[P1, P2, Q1, Q2], that: IX[B1 |*| B2, A2, Q1 |*| Q2, R1, R2]): A1 |*| P1 |*| A2 |*| P2 ~⚬ R1 |*| R2 |*| B2

Attributes

Inherited from:
Transfer
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product
def project[C](p: Projection[|*|, B1 |*| B2 |*| A2, C]): ProjectRes[A1 |*| A2, C]

Attributes

Inherited from:
TransferOpt
final override def projectProper[C](p: Proper[|*|, B1 |*| B2 |*| A2, C]): ProjectProperRes[A1 |*| A2, C]

Attributes

Definition Classes
Inherited from:
Transfer
def to[C1, C2](using ev: B1 |*| B2 |*| A2 =:= C1 |*| C2): Transfer[A1, A2, C1, C2]

Attributes

Inherited from:
Transfer
final def translate[<*>[_, _], F[_, _], S](fa: F[A1 |*| A2 |*| A3, S])(m: ObjectMap[|*|, <*>, F], tgt: Shuffle[<*>]): Exists[[t] =>> (S ~⚬ t, F[B1 |*| B2, t])]

Attributes

Inherited from:
TransferOpt