Fst

libretto.lambda.Projection.Fst
case class Fst[|*|[_, _], P, Q, B](p1: Proper[|*|, P, Q]) extends Par[|*|, P, B, Q, B]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Par[|*|, P, B, Q, B]
trait Proper[|*|, P |*| B, Q |*| B]
trait Projection[|*|, P |*| B, Q |*| B]
class Object
trait Matchable
class Any
Show all

Members list

Type members

Inherited classlikes

class FromPair[P1, P2](using ev: P =:= (P1 |*| P2))

Attributes

Inherited from:
Proper
Supertypes
class Object
trait Matchable
class Any

Value members

Inherited methods

override def >[R](that: Projection[|*|, Q |*| B, R]): Proper[|*|, P |*| B, R]

Attributes

Definition Classes
Inherited from:
Proper
override def at[F[_]](f: Focus[|*|, F]): Proper[|*|, F[P |*| B], F[Q |*| B]]

Attributes

Definition Classes
Inherited from:
Proper
override def from[O](using ev: O =:= (P |*| B)): Proper[|*|, O, Q |*| B]

Attributes

Definition Classes
Inherited from:
Proper
def fromPair[P1, P2](using (P |*| B) =:= (P1 |*| P2)): FromPair[P1, P2]

Attributes

Inherited from:
Proper
override def inFst[X2]: Proper[|*|, P |*| B |*| X2, Q |*| B |*| X2]

Attributes

Definition Classes
Inherited from:
Proper
override def inSnd[X1]: Proper[|*|, X1 |*| P |*| B, X1 |*| Q |*| B]

Attributes

Definition Classes
Inherited from:
Proper
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product
override def startsFromPair: Exists[[X1] =>> Exists[[X2] =>> (P |*| B) =:= (X1 |*| X2)]]

Attributes

Definition Classes
Par -> Proper
Inherited from:
Par
def switchFromPair[P1, P2, R](using ev: (P |*| B) =:= (P1 |*| P2))(caseDiscardFst: Projection[|*|, P2, Q |*| B] => R, caseDiscardSnd: Projection[|*|, P1, Q |*| B] => R, casePar: [Q1, Q2] => ((Q |*| B) =:= (Q1 |*| Q2)) ?=> Par[|*|, P1, P2, Q1, Q2] => R)(using BiInjective[|*|]): R

Attributes

Inherited from:
Proper
override def to[R](using ev: (Q |*| B) =:= R): Proper[|*|, P |*| B, R]

Attributes

Definition Classes
Inherited from:
Proper
def unpar: (Projection[|*|, P, Q], Projection[|*|, B, B])

Attributes

Inherited from:
Par