Punched

libretto.lambda.Shuffle.~⚬.Punched
See thePunched companion object
trait Punched[F[_], G[_]]

A shuffle 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]: F[X] ~⚬ G[X]

Concrete methods

def >[H[_]](that: Punched[G, H]): Punched[F, H]
def after[E[_]](e: Focus[|*|, E], f: [x] => Unit => E[x] ~⚬ F[x]): Punched[E, G]
def andThen[H[_]](h: Focus[|*|, H], f: [x] => Unit => G[x] ~⚬ H[x]): Punched[F, H]
def apply[X]: F[X] ~⚬ G[X]
def inFst[C, D](snd: C ~⚬ D): Punched[[x] =>> F[x] |*| C, [x] =>> G[x] |*| D]
def inSnd[A, B](fst: A ~⚬ B): Punched[[x] =>> A |*| F[x], [x] =>> B |*| G[x]]