List
val iter : ('a -> unit option) -> 'a list -> unit option
val map : ('a -> 'b option) -> 'a list -> 'b list option
val fold_left : ('a -> 'b -> 'a option) -> 'a -> 'b list -> 'a option