public static Func <ImList <T>, ImList <T> > Overlay <T>(Func <T, T, bool> predicate, ImList <T> list1) { return(Curry <Func <T, T, bool>, ImList <T>, ImList <T>, ImList <T> > .New(Overlay)(predicate)(list1)); }
public static Func <A1, Func <A2, R> > New(Func <A1, A2, R> handler) { var curry = new Curry <A1, A2, R>(handler); return(new Func <A1, Func <A2, R> >(curry.AddFirst)); }
public static Func <ImList <T>, ImList <T> > Transform <T>(Func <T, T> iterator) { return(Curry <Func <T, T>, ImList <T>, ImList <T> > .New(Transform)(iterator)); }