Single

libretto.lambda.ParN.Single
case class Single[[_, _], Nil, ->[_, _], A, B](value: A -> B) extends ParN[, Nil, ->, Nil A, Nil B]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait ParN[, Nil, ->, Nil A, Nil B]
class Object
trait Matchable
class Any
Show all

Members list

Type members

Inherited types

type ZippedWithIndex[X, Y] = (X -> Y, TupleElem[, Nil, X, Nil A], TupleElem[, Nil, Y, Nil B])

Attributes

Inherited from:
ParN

Value members

Concrete methods

override def divide[F[_, _], G[_, _]](h: [X, Y] => (X -> Y) => Exists[[Q] =>> (F[X, Q], G[Q, Y])]): Exists[[Q] =>> (ParN[, Nil, F, Nil A, Q], ParN[, Nil, G, Q, Nil B])]

Attributes

Definition Classes
override def flip: ParN[, Nil, [x, y] =>> y -> x, Nil B, Nil A]

Attributes

Definition Classes
override def foldCrush[T](crush: [X, Y] => (X -> Y) => T, reduce: (T, T) => T): T

Attributes

Definition Classes
override def foldL[G[_, _]](first: [x, y] => (x -> y) => G[Nil x, Nil y], snoc: [x1, x2, y1, y2] => (x$1: G[x1, y1], x$2: x2 -> y2) => G[x1 x2, y1 y2]): G[Nil A, Nil B]

Attributes

Definition Classes
override def inputProjection[F[_]](f: [X, Y] => (X -> Y) => F[X]): TupleN[, Nil, F, Nil A]

Attributes

Definition Classes
override def nonEmpty[R](f: [a1, a2, b1, b2] => (x$1: (Nil A) =:= (a1 a2), x$2: (Nil B) =:= (b1 b2)) ?=> R): R

Attributes

Definition Classes
override def nonEmptyIn(pairIsNotNil: [x, y] => ((x y) =:= Nil) => Nothing): ((Nil A) =:= Nil) => Nothing

Attributes

Definition Classes
override def nonEmptyOut(pairIsNotNil: [x, y] => ((x y) =:= Nil) => Nothing): ((Nil B) =:= Nil) => Nothing

Attributes

Definition Classes
override def outputProjection[G[_]](g: [X, Y] => (X -> Y) => G[Y]): TupleN[, Nil, G, Nil B]

Attributes

Definition Classes
override def size: Int

Attributes

Definition Classes
override def translate[->>[_, _]](f: [X, Y] => (X -> Y) => ->>[X, Y]): ParN[, Nil, ->>, Nil A, Nil B]

Attributes

Definition Classes
override def zipWithIndex: ParN[, Nil, [x, y] =>> (x -> y, TupleElem[, Nil, x, Nil A], TupleElem[, Nil, y, Nil B]), Nil A, Nil B]

Attributes

Definition Classes

Inherited methods

def divide3[F[_, _], G[_, _], H[_, _]](h: [X, Y] => (X -> Y) => Exists[[P] =>> Exists[[Q] =>> (F[X, P], G[P, Q], H[Q, Y])]]): Exists[[P] =>> Exists[[Q] =>> (ParN[, Nil, F, Nil A, P], ParN[, Nil, G, P, Q], ParN[, Nil, H, Q, Nil B])]]

Attributes

Inherited from:
ParN
def exists(pred: [X, Y] => (X -> Y) => Boolean): Boolean

Attributes

Inherited from:
ParN
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product
def toList[T](f: [X, Y] => (X -> Y) => T): List[T]

Attributes

Inherited from:
ParN
def [C, D](f: C -> D): ParN[, Nil, ->, Nil A C, Nil B D]

Attributes

Inherited from:
ParN