build with ocamlbuild by default
[deriving.git] / lib / functor.mli
blob15f863757eb8898f4d1bbcc8fcf6376322e656dd
1 module type Functor =
2 sig
3 type 'a f
4 val map : ('a -> 'b) -> 'a f -> 'b f
5 end
6 module MonadFunctor (M : Monad.Monad) : Functor with type 'a f = 'a M.m
7 module Functor_option : Functor with type 'a f = 'a option
8 module Functor_list : Functor with type 'a f = 'a list
9 module Functor_map (O : Map.OrderedType) : Functor with type 'a f = 'a Map.Make(O).t