Package eu.bandm.tools.ops
Class SpecialFunctions
java.lang.Object
eu.bandm.tools.ops.SpecialFunctions
Library of constants and combinators for special functions.
-
Method Summary
Modifier and TypeMethodDescriptionstatic <A> Semigroup<A>
asSemigroup
(BiFunction<? super A, ? super A, ? extends A> f) static <A,
B, C> InvertibleFunction<A, C> compose
(InvertibleFunction<A, B> inner, InvertibleFunction<B, C> outer) static <A,
B, C> RetractableFunction<A, C> compose
(RetractableFunction<A, B> inner, RetractableFunction<B, C> outer) static <A,
B, C> SectionableFunction<A, C> compose
(SectionableFunction<A, B> inner, SectionableFunction<B, C> outer) static <A> InvertibleFunction<A,
A> identity()
static <A> InvertibleFunction<A,
A> static <A,
B> InvertibleFunction<B, A> inverse
(InvertibleFunction<A, B> fun) static <A,
B> SectionableFunction<B, A> inverse
(RetractableFunction<A, B> fun) static <A,
B> RetractableFunction<B, A> inverse
(SectionableFunction<A, B> fun) tupleConvert
(BiFunction<? super A, ? super B, ? extends C> f) static <A,
B, C> BiFunction<A, B, C> tupleConvert
(Function<? super Tuple2<? super A, ? super B>, ? extends C> f)
-
Method Details
-
identity
-
identity
-
compose
public static <A,B, RetractableFunction<A,C> C> compose(RetractableFunction<A, B> inner, RetractableFunction<B, C> outer) -
compose
public static <A,B, SectionableFunction<A,C> C> compose(SectionableFunction<A, B> inner, SectionableFunction<B, C> outer) -
compose
public static <A,B, InvertibleFunction<A,C> C> compose(InvertibleFunction<A, B> inner, InvertibleFunction<B, C> outer) -
asSemigroup
-
inverse
-
inverse
-
inverse
-
tupleConvert
public static <A,B, Function<Tuple2<A,C> B>, tupleConvertC> (BiFunction<? super A, ? super B, ? extends C> f) -
tupleConvert
public static <A,B, BiFunction<A,C> B, tupleConvertC> (Function<? super Tuple2<? super A, ? super B>, ? extends C> f) -
tupling
-