KeepFst

libretto.lambda.Knit.KeepFst
case class KeepFst[**[_, _], A]() extends Knit[**, [x] =>> A ** x]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Knit[**, [x] =>> A ** x]
class Object
trait Matchable
class Any
Show all

Members list

Type members

Types

override type Res = A

Value members

Concrete methods

override def proveProduct[X]: Exists[[a] =>> Exists[[b] =>> (A ** X) =:= (a ** b)]]

Attributes

Definition Classes
override def toFocus: Focus[**, [x] =>> A ** x]

Attributes

Definition Classes
override def toProjection[X]: Projection[**, A ** X, A]

Attributes

Definition Classes
override def visit[R](caseKeepFst: [X] => (x$1: TypeEqK[[_] =>> A ** _$87, [_] =>> X ** _$88], x$2: Res =:= X) => R, caseKeepSnd: [Y] => (x$1: TypeEqK[[_] =>> A ** _$89, **], x$2: Res =:= Y) => R, caseInFst: [F1[_], Y] => (k: Knit[**, F1]) => (ev: TypeEqK[[_] =>> A ** _$92, [x] =>> F1[x] ** Y], ev1: Res =:= (k.Res ** Y)) => R, caseInSnd: [X, F2[_]] => (k: Knit[**, F2]) => (ev: TypeEqK[[_] =>> A ** _$94, [y] =>> X ** F2[y]], ev1: Res =:= (X ** k.Res)) => R): R

Attributes

Definition Classes

Inherited methods

def at[G[_]](g: Focus[**, G]): Knitted[**, [x] =>> G[[x] =>> A ** x[x]], G[Res]]

Attributes

Inherited from:
Knit
def from[E[_]](using ev: TypeEqK[E, [x] =>> A ** x]): Knitted[**, E, Res]

Attributes

Inherited from:
Knit
def inFst[Y]: Knitted[**, [x] =>> [x] =>> A ** x[x] ** Y, Res ** Y]

Attributes

Inherited from:
Knit
def inSnd[X]: Knitted[**, [x] =>> X ** [x] =>> A ** x[x], X ** Res]

Attributes

Inherited from:
Knit
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product
def to[R](using ev: Res =:= R): Knitted[**, [x] =>> A ** x, R]

Attributes

Inherited from:
Knit