Up

Module type Args2

Signature

type ('a, 'e) arg
type ('f, 'r, 'e) t
val nil : ('r, 'r, _) t
val cons : ('a, 'e) arg -> ('f, 'r, 'e) t -> ('a -> 'f, 'r, 'e) t
val (@>) : ('a, 'e) arg -> ('f, 'r, 'e) t -> ('a -> 'f, 'r, 'e) t
val step : ('f1, 'r, 'e) t -> f:('f2 -> 'f1) -> ('f2, 'r, 'e) t
val mapN : f:'f -> ('f, 'r, 'e) t -> ('r, 'e) arg
val applyN : ('f, 'e) arg -> ('f, 'r, 'e) t -> ('r, 'e) arg