IXI

libretto.lambda.Shuffle.Transfer$.IXI
case class IXI[A1, A2, A3, A4, B1, B2, B3, B4](g1: TransferOpt[A1, A3, B1, B2], g2: TransferOpt[A2, A4, B3, B4]) extends Transfer[A1 |*| A2, A3 |*| A4, B1 |*| B2, B3 |*| B4]

Attributes

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

Members list

Concise view

Value members

Concrete methods

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

Attributes

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

Attributes

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

Attributes

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

Attributes

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

Attributes

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

Attributes

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

Attributes

Definition Classes
override def assocRL_this_ixi[X1, X2, Y1, Y2, Y3, Y4](h: IXI[B1 |*| B2, B3 |*| B4, X1, X2, Y1, Y2, Y3, Y4]): A1 |*| A2 |*| A3 |*| A4 |*| 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 |*| A4, [t] =>> G[t] |*| B3 |*| B4, T]

Attributes

Definition Classes
override def chaseBwSnd[G[_], T](i: Focus[|*|, G])(using B3 |*| B4 =:= G[T]): ChaseBwRes[A1 |*| A2 |*| A3 |*| A4, [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 |*| A4, T, B1 |*| B2 |*| B3 |*| B4]

Attributes

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

Attributes

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

Attributes

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

Attributes

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

Attributes

Definition Classes
override def ix_this_ixi[P1, P2, Q1, Q2, Q3, Q4](that: IXI[B1 |*| B2, B3 |*| B4, P1, P2, Q1, Q2, Q3, Q4]): A1 |*| A2 |*| P1 |*| P2 |*| A3 |*| A4 ~⚬ 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 |*| A4, Y1 |*| Y2, Y3 |*| Y4, B1 |*| B2, B3 |*| B4]

Attributes

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

Attributes

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

Attributes

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

Attributes

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

Attributes

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

Attributes

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

Attributes

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

Attributes

Definition Classes
override def thenAssocRL[D1, D2, C1, C2](that: AssocRL[B1 |*| B2, D1, D2, C1, C2])(using ev: B3 |*| B4 =:= D1 |*| D2): A1 |*| A2 |*| A3 |*| A4 ~⚬ C1 |*| C2 |*| D2

Attributes

Definition Classes
override def thenBi[C1, C2](h1: B1 |*| B2 ~⚬ C1, h2: B3 |*| B4 ~⚬ C2): Xfer[A1 |*| A2, A3 |*| A4, _, _, C1, C2]

Attributes

Definition Classes
override def thenIX[B1_, B2_, C1, C2](that: IX[B1_, B2_, B3 |*| B4, C1, C2])(using ev: B1 |*| B2 =:= B1_ |*| B2_): A1 |*| A2 |*| A3 |*| A4 ~⚬ C1 |*| C2 |*| B2_

Attributes

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

Attributes

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

Attributes

Definition Classes
override def thenXI[D1, D2, C2, C3](that: XI[B1 |*| B2, D1, D2, C2, C3])(implicit ev: B3 |*| B4 =:= D1 |*| D2): A1 |*| A2 |*| A3 |*| A4 ~⚬ D1 |*| C2 |*| C3

Attributes

Definition Classes
override def translateLR[<*>[_, _], F[_, _], S1, S2](fa12: F[A1 |*| A2, S1], fa34: F[A3 |*| A4, S2])(m: ObjectMap[|*|, <*>, F])(using tgt: Shuffle[<*>]): Exists[[T1] =>> Exists[[T2] =>> (TransferOpt[S1, S2, T1, T2], F[B1 |*| B2, T1], F[B3 |*| B4, T2])]]

Attributes

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

Attributes

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

Attributes

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

Attributes

Definition Classes

Inherited methods

def >[C1, C2](that: Transfer[B1 |*| B2, B3 |*| B4, 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 |*| B3 |*| B4 =:= 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 |*| A4): 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, B3 |*| B4, 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 |*| B3 |*| B4, C]): ProjectRes[A1 |*| A2, C]

Attributes

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

Attributes

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

Attributes

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

Attributes

Inherited from:
TransferOpt