Punched

libretto.lambda.Shuffled.Punched
See thePunched companion object
trait Punched[F[_], G[_]]

A Shuffled with a hole through it.

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Punched[F, G]

Members list

Value members

Abstract methods

def focusIn: Focus[|*|, F]
def focusOut: Focus[|*|, G]
def plug[X]: Shuffled[F[X], G[X]]

Concrete methods

def >[H[_]](that: Punched[G, H]): Punched[F, H]
def after[H[_]](H: Focus[|*|, H], h: [x] => Unit => Shuffled[H[x], F[x]]): Punched[H, G]
def andThen[H[_]](H: Focus[|*|, H], h: [x] => Unit => Shuffled[G[x], H[x]]): Punched[F, H]
def apply[X]: Shuffled[F[X], G[X]]
def inFst[P, Q](g: Shuffled[P, Q]): Punched[[x] =>> F[x] |*| P, [x] =>> G[x] |*| Q]
def inFst[P]: Punched[[x] =>> F[x] |*| P, [x] =>> G[x] |*| P]
def inSnd[P, Q](f: Shuffled[P, Q]): Punched[[x] =>> P |*| F[x], [x] =>> Q |*| G[x]]
def inSnd[P]: Punched[[x] =>> P |*| F[x], [x] =>> P |*| G[x]]
def knitBw(k: Knit[|*|, G]): Exists[[F0] =>> (Knitted[|*|, F, F0], Shuffled[F0, k.Res])]