/** * Curry this closure by fixing its third free variable to a given value. * @param curry The value to which the third variable should be curry * @return A Closure having two free variables */ public Closure2<A, B> curry3(C curry) { return curry(new Closure2<A, B>(), curry, 3); }
/** * Curry this closure by fixing its second free variable to a given value. * @param curry The value to which the second variable should be curry * @return A Closure having two free variables */ public Closure2<A, C> curry2(B curry) { return curry(new Closure2<A, C>(), curry, 2); }
/** * Curry this closure by fixing its first free variable to a given value. * @param curry The value to which the first variable should be curry * @return A Closure having two free variables */ public Closure2<B, C> curry1(A curry) { return curry(new Closure2<B, C>(), curry, 1); }