public abstract class P3<A,B,C>
extends java.lang.Object
Constructor and Description |
---|
P3() |
Modifier and Type | Method and Description |
---|---|
static <A,B,C> F<P3<A,B,C>,A> |
__1()
Returns a function that returns the first element of a product.
|
static <A,B,C> F<P3<A,B,C>,B> |
__2()
Returns a function that returns the second element of a product.
|
static <A,B,C> F<P3<A,B,C>,C> |
__3()
Returns a function that returns the third element of a product.
|
P1<A> |
_1_()
Returns the 1-product projection over the first element.
|
abstract A |
_1()
Access the first element of the product.
|
P1<B> |
_2_()
Returns the 1-product projection over the second element.
|
abstract B |
_2()
Access the second element of the product.
|
P1<C> |
_3_()
Returns the 1-product projection over the third element.
|
abstract C |
_3()
Access the third element of the product.
|
boolean |
equals(java.lang.Object other) |
int |
hashCode() |
<X> P3<X,B,C> |
map1(F<A,X> f)
Map the first element of the product.
|
<X> P3<A,X,C> |
map2(F<B,X> f)
Map the second element of the product.
|
<X> P3<A,B,X> |
map3(F<C,X> f)
Map the third element of the product.
|
P3<A,B,C> |
memo()
Provides a memoising P3 that remembers its values.
|
java.lang.String |
toString() |
public abstract A _1()
public abstract B _2()
public abstract C _3()
public final <X> P3<X,B,C> map1(F<A,X> f)
f
- The function to map with.public final <X> P3<A,X,C> map2(F<B,X> f)
f
- The function to map with.public final <X> P3<A,B,X> map3(F<C,X> f)
f
- The function to map with.public final P1<A> _1_()
public final P1<B> _2_()
public final P1<C> _3_()
public final P3<A,B,C> memo()
public static <A,B,C> F<P3<A,B,C>,A> __1()
public static <A,B,C> F<P3<A,B,C>,B> __2()
public static <A,B,C> F<P3<A,B,C>,C> __3()
public java.lang.String toString()
toString
in class java.lang.Object
public boolean equals(java.lang.Object other)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object