@Override protected T load() { return _function.apply(lazy(_m1),lazy(_m2),lazy(_m3)); } }
/** * joins to functions with matching types to a new function * converts T2 and T3 to X and T1 to R * @param outer * the last applied function * @param inner * the first applied function * @return a new function */ public static <R, T1, T2, T3, A, B> Function3<R, T1, T2, T3> join(Function2<R, A, B> outer, Function2<A, T1, T2> left, Function2<B, T2, T3> right) { return new JoinedFunction33<R, T1, T2, T3, A, B>(outer, left, right); }
@Override protected T load() { return _function.apply(lazy(_m1),lazy(_m2)); } }
@Override protected T load() { return _function.apply(lazy(_m1)); } }
/** * swap function type signature without changing behavior * * @param source * source function * @return function adapter with flipped types */ public static <R, T1, T2> Function2<R, T1, T2> swap(Function2<R, ? super T2, ? super T1> source) { return new SwappedTypeFunction<R, T1, T2>(source); }
/** * joins to functions with matching types to a new function * converts T2 and T3 to X and T1 to R * @param outer * the last applied function * @param inner * the first applied function * @return a new function */ public static <R, T1, T2, T3, X> Function3<R, T1, T2, T3> join(Function2<R, T1, X> outer, Function2<X, T2, T3> inner) { return new JoinedFunction3<R, T1, T2, T3, X>(outer, inner); }
/** * joins to functions with matching types to a new function * converts T2 to X and T1 to R * @param outer * the last applied function * @param inner * the first applied function * @return a new function */ public static <R, T1, T2, X> Function2<R, T1, T2> join(Function2<R, T1, X> outer, Function1<X, T2> inner) { return new JoinedFunction2<R, T1, T2, X>(outer, inner); }
@Override protected T load() { return _function.apply(lazy(_m1),lazy(_m2)); } }
@Override protected T load() { return _function.apply(lazy(_m1),lazy(_m2),lazy(_m3)); } }
/** * joins to functions with matching types to a new function * converts T2 and T3 to X and T1 to R * @param outer * the last applied function * @param inner * the first applied function * @return a new function */ public static <R, T1, T2, T3, A, B> Function3<R, T1, T2, T3> join(Function2<R, ? super A, ? super B> outer, Function2<A, ? super T1, ? super T2> left, Function2<B, ? super T2, ? super T3> right) { return new JoinedFunction33<R, T1, T2, T3, A, B>(outer, left, right); }
@Override protected T load() { return _function.apply(lazy(_m1)); } }
/** * swap function type signature without changing behavior * * @param source * source function * @return function adapter with flipped types */ public static <R, T1, T2> Function2<R, T1, T2> swap(Function2<R, ? super T2, ? super T1> source) { return new SwappedTypeFunction<R, T1, T2>(source); }
/** * joins to functions with matching types to a new function * converts T2 and T3 to X and T1 to R * @param outer * the last applied function * @param inner * the first applied function * @return a new function */ public static <R, T1, T2, T3, X> Function3<R, T1, T2, T3> join(Function2<R, ? super T1, ? super X> outer, Function2<X, ? super T2, ? super T3> inner) { return new JoinedFunction3<R, T1, T2, T3, X>(outer, inner); }
@Override protected T load() { return _function.apply(lazy(_m1),lazy(_m2)); } }
@Override protected T load() { return _function.apply(lazy(_m1),lazy(_m2),lazy(_m3)); } }
/** * joins to functions with matching types to a new function * converts T2 and T3 to X and T1 to R * @param outer * the last applied function * @param inner * the first applied function * @return a new function */ public static <R, T1, T2, T3, A, B> Function3<R, T1, T2, T3> join(Function2<R, ? super A, ? super B> outer, Function2<A, ? super T1, ? super T2> left, Function2<B, ? super T2, ? super T3> right) { return new JoinedFunction33<R, T1, T2, T3, A, B>(outer, left, right); }