Functor BatEnum.WithMonad


module WithMonad: 
functor (Mon : BatMonad.S) -> sig .. end
Monadic operations on Enumerations containing monadic elements

This module will let you use sequence and fold_monad functions over enumerations.
Parameters:
Mon : BatMonad.S


type 'a m = 'a Mon.m 
Type of the monadic elements.
val sequence : 'a m BatEnum.t -> 'a BatEnum.t m
sequence e evaluates each monadic elements (of type 'a m contained in the enumeration e to get a monadic enumeration of 'a elements, of type 'a m BatEnum.t.
val fold_monad : ('a -> 'b -> 'a m) ->
'a -> 'b BatEnum.t -> 'a m
fold_monad f init e does a folding of the enumeration e applying step by step the function f that gives back results in the Mon monad, with the init initial element. The result is a value in the Mond monad.