DiscardSnd

libretto.lambda.Projection.DiscardSnd
case class DiscardSnd[|*|[_, _], A, B, A0](p1: Projection[|*|, A, A0]) extends Proper[|*|, A |*| B, A0]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Proper[|*|, A |*| B, A0]
trait Projection[|*|, A |*| B, A0]
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

Concrete methods

override def startsFromPair: Exists[[P1] =>> Exists[[P2] =>> A |*| B =:= P1 |*| P2]]

Attributes

Definition Classes

Inherited methods

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

Attributes

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

Attributes

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

Attributes

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

Attributes

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

Attributes

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

Attributes

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

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product
def switchFromPair[P1, P2, R](using ev: A |*| B =:= P1 |*| P2)(caseDiscardFst: (p2: Projection[|*|, P2, A0]) => R, caseDiscardSnd: (p1: Projection[|*|, P1, A0]) => R, casePar: [Q1, Q2] => (x$1: A0 =:= Q1 |*| Q2) => (p: Par[|*|, P1, P2, Q1, Q2]) => R)(using BiInjective[|*|]): R

Attributes

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

Attributes

Definition Classes
Inherited from:
Proper