InFstImpl

libretto.lambda.Knit.InFstImpl
class InFstImpl[**[_, _], F[_], B, A](val k: Knitted[**, F, A]) extends InFst[**, F, B]

Attributes

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

Members list

Type members

Inherited types

override type Res = this.k.Res ** B

Attributes

Inherited from:
InFst

Value members

Inherited methods

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

Attributes

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

Attributes

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

Attributes

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

Attributes

Inherited from:
Knit
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product
override def proveProduct[X]: Exists[[a] =>> Exists[[b] =>> (F[X] ** B) =:= (a ** b)]]

Attributes

Definition Classes
InFst -> Knit
Inherited from:
InFst
def to[R](using ev: Res =:= R): Knitted[**, [x] =>> F[x] ** B, R]

Attributes

Inherited from:
Knit
override def toFocus: Focus[**, [x] =>> F[x] ** B]

Attributes

Definition Classes
InFst -> Knit
Inherited from:
InFst
override def toProjection[X]: Projection[**, F[X] ** B, Res]

Attributes

Definition Classes
InFst -> Knit
Inherited from:
InFst
override def visit[R](caseKeepFst: [X] => (x$1: TypeEqK[[x] =>> F[x] ** B, [_] =>> X ** _$108], x$2: Res =:= X) => R, caseKeepSnd: [Y] => (x$1: TypeEqK[[x] =>> F[x] ** B, **], x$2: Res =:= Y) => R, caseInFst: [F1[_], Y] => (k: Knit[**, F1]) => (ev: TypeEqK[[x] =>> F[x] ** B, [x] =>> F1[x] ** Y], ev1: Res =:= (k.Res ** Y)) => R, caseInSnd: [X, F2[_]] => (k: Knit[**, F2]) => (ev: TypeEqK[[x] =>> F[x] ** B, [y] =>> X ** F2[y]], ev1: Res =:= (X ** k.Res)) => R): R

Attributes

Definition Classes
InFst -> Knit
Inherited from:
InFst

Concrete fields

override val k: Knitted[**, F, A]