Module type Foldable.S2

The complete module signature for Foldable for types with a single type variable.

type ('a, 'b) t
val fold_left : f:('c -> 'a -> 'c) -> g:('c -> 'b -> 'c) -> init:'c -> ('a, 'b) t -> 'c
val fold_right : f:('a -> 'c -> 'c) -> g:('b -> 'c -> 'c) -> init:'c -> ('a, 'b) t -> 'c
val any : pred_first:('a -> bool) -> pred_second:('b -> bool) -> ?init:bool -> ('a, 'b) t -> bool
val all : pred_first:('a -> bool) -> pred_second:('b -> bool) -> ?init:bool -> ('a, 'b) t -> bool