sig
module type S =
sig
type key
type img
type t
val empty : t
val is_empty : t -> bool
val add : key -> img -> t -> t
val find : key -> t -> img
val remove : key -> t -> t
val mem : key -> t -> bool
val iter : (key -> img -> unit) -> t -> unit
val map : (img -> img) -> t -> t
val mapi : (key -> img -> img) -> t -> t
val fold : (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val compare : t -> t -> int
val equal : t -> t -> bool
val add' : key -> img option -> t -> t
val find' : key -> t -> img option
val add_list : (key * img) list -> t -> t
val to_list : t -> (key * img) list
val from_list : (key * img) list -> t
val map_to_list : (key -> img -> 'a) -> t -> 'a list
val mapi_and_map_to_list : (key -> img -> img * 'a) -> t -> t * 'a list
val domain : t -> key list
val fold_two :
(key -> img option -> img option -> 'a -> 'a) -> 'a -> t -> t -> 'a
val restrict : key list -> t -> t
val iter_all : ?rev:bool -> (key -> img -> unit) -> t -> unit
val map_all : ?rev:bool -> (img -> img) -> t -> t
val mapi_all : ?rev:bool -> (key -> img -> img) -> t -> t
val fold_all : ?rev:bool -> (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val to_list_all : ?rev:bool -> t -> (key * img) list
val compare_all : t -> t -> int
val equal_all : t -> t -> bool
end
module Make :
functor (Key : OwnMap.OrderedType) ->
functor (Img : OwnMap.OrderedType) ->
sig
type key = Key.t
type img = Img.t
type t
val empty : t
val is_empty : t -> bool
val add : key -> img -> t -> t
val find : key -> t -> img
val remove : key -> t -> t
val mem : key -> t -> bool
val iter : (key -> img -> unit) -> t -> unit
val map : (img -> img) -> t -> t
val mapi : (key -> img -> img) -> t -> t
val fold : (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val compare : t -> t -> int
val equal : t -> t -> bool
val add' : key -> img option -> t -> t
val find' : key -> t -> img option
val add_list : (key * img) list -> t -> t
val to_list : t -> (key * img) list
val from_list : (key * img) list -> t
val map_to_list : (key -> img -> 'a) -> t -> 'a list
val mapi_and_map_to_list :
(key -> img -> img * 'a) -> t -> t * 'a list
val domain : t -> key list
val fold_two :
(key -> img option -> img option -> 'a -> 'a) ->
'a -> t -> t -> 'a
val restrict : key list -> t -> t
val iter_all : ?rev:bool -> (key -> img -> unit) -> t -> unit
val map_all : ?rev:bool -> (img -> img) -> t -> t
val mapi_all : ?rev:bool -> (key -> img -> img) -> t -> t
val fold_all :
?rev:bool -> (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val to_list_all : ?rev:bool -> t -> (key * img) list
val compare_all : t -> t -> int
val equal_all : t -> t -> bool
end
module type StringOf =
sig type t val string_of : HistoryMap.StringOf.t -> string end
module type Custom = sig val sep : string val mapto : string end
module type S_Str =
sig
type key
type img
type t
val empty : t
val is_empty : t -> bool
val add : key -> img -> t -> t
val find : key -> t -> img
val remove : key -> t -> t
val mem : key -> t -> bool
val iter : (key -> img -> unit) -> t -> unit
val map : (img -> img) -> t -> t
val mapi : (key -> img -> img) -> t -> t
val fold : (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val compare : t -> t -> int
val equal : t -> t -> bool
val add' : key -> img option -> t -> t
val find' : key -> t -> img option
val add_list : (key * img) list -> t -> t
val to_list : t -> (key * img) list
val from_list : (key * img) list -> t
val map_to_list : (key -> img -> 'a) -> t -> 'a list
val mapi_and_map_to_list : (key -> img -> img * 'a) -> t -> t * 'a list
val domain : t -> key list
val fold_two :
(key -> img option -> img option -> 'a -> 'a) -> 'a -> t -> t -> 'a
val restrict : key list -> t -> t
val iter_all : ?rev:bool -> (key -> img -> unit) -> t -> unit
val map_all : ?rev:bool -> (img -> img) -> t -> t
val mapi_all : ?rev:bool -> (key -> img -> img) -> t -> t
val fold_all : ?rev:bool -> (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val to_list_all : ?rev:bool -> t -> (key * img) list
val compare_all : t -> t -> int
val equal_all : t -> t -> bool
val string_of : t -> string
end
module AddString :
functor (KeyS : StringOf) ->
functor (ImgS : StringOf) ->
functor (SCustom : Custom) ->
functor
(Map : sig
type key = KeyS.t
type img = ImgS.t
type t
val empty : t
val is_empty : t -> bool
val add : key -> img -> t -> t
val find : key -> t -> img
val remove : key -> t -> t
val mem : key -> t -> bool
val iter : (key -> img -> unit) -> t -> unit
val map : (img -> img) -> t -> t
val mapi : (key -> img -> img) -> t -> t
val fold : (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val compare : t -> t -> int
val equal : t -> t -> bool
val add' : key -> img option -> t -> t
val find' : key -> t -> img option
val add_list : (key * img) list -> t -> t
val to_list : t -> (key * img) list
val from_list : (key * img) list -> t
val map_to_list : (key -> img -> 'a) -> t -> 'a list
val mapi_and_map_to_list :
(key -> img -> img * 'a) -> t -> t * 'a list
val domain : t -> key list
val fold_two :
(key -> img option -> img option -> 'a -> 'a) ->
'a -> t -> t -> 'a
val restrict : key list -> t -> t
val iter_all :
?rev:bool -> (key -> img -> unit) -> t -> unit
val map_all : ?rev:bool -> (img -> img) -> t -> t
val mapi_all :
?rev:bool -> (key -> img -> img) -> t -> t
val fold_all :
?rev:bool -> (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val to_list_all : ?rev:bool -> t -> (key * img) list
val compare_all : t -> t -> int
val equal_all : t -> t -> bool
end) ->
sig
type key = Map.key
type img = Map.img
type t
val empty : t
val is_empty : t -> bool
val add : key -> img -> t -> t
val find : key -> t -> img
val remove : key -> t -> t
val mem : key -> t -> bool
val iter : (key -> img -> unit) -> t -> unit
val map : (img -> img) -> t -> t
val mapi : (key -> img -> img) -> t -> t
val fold : (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val compare : t -> t -> int
val equal : t -> t -> bool
val add' : key -> img option -> t -> t
val find' : key -> t -> img option
val add_list : (key * img) list -> t -> t
val to_list : t -> (key * img) list
val from_list : (key * img) list -> t
val map_to_list : (key -> img -> 'a) -> t -> 'a list
val mapi_and_map_to_list :
(key -> img -> img * 'a) -> t -> t * 'a list
val domain : t -> key list
val fold_two :
(key -> img option -> img option -> 'a -> 'a) ->
'a -> t -> t -> 'a
val restrict : key list -> t -> t
val iter_all : ?rev:bool -> (key -> img -> unit) -> t -> unit
val map_all : ?rev:bool -> (img -> img) -> t -> t
val mapi_all : ?rev:bool -> (key -> img -> img) -> t -> t
val fold_all :
?rev:bool -> (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val to_list_all : ?rev:bool -> t -> (key * img) list
val compare_all : t -> t -> int
val equal_all : t -> t -> bool
val string_of : t -> string
end
module AddS :
functor (KeyS : StringOf) ->
functor (ImgS : StringOf) ->
functor
(Map : sig
type key = KeyS.t
type img = ImgS.t
type t
val empty : t
val is_empty : t -> bool
val add : key -> img -> t -> t
val find : key -> t -> img
val remove : key -> t -> t
val mem : key -> t -> bool
val iter : (key -> img -> unit) -> t -> unit
val map : (img -> img) -> t -> t
val mapi : (key -> img -> img) -> t -> t
val fold : (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val compare : t -> t -> int
val equal : t -> t -> bool
val add' : key -> img option -> t -> t
val find' : key -> t -> img option
val add_list : (key * img) list -> t -> t
val to_list : t -> (key * img) list
val from_list : (key * img) list -> t
val map_to_list : (key -> img -> 'a) -> t -> 'a list
val mapi_and_map_to_list :
(key -> img -> img * 'a) -> t -> t * 'a list
val domain : t -> key list
val fold_two :
(key -> img option -> img option -> 'a -> 'a) ->
'a -> t -> t -> 'a
val restrict : key list -> t -> t
val iter_all :
?rev:bool -> (key -> img -> unit) -> t -> unit
val map_all : ?rev:bool -> (img -> img) -> t -> t
val mapi_all : ?rev:bool -> (key -> img -> img) -> t -> t
val fold_all :
?rev:bool -> (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val to_list_all : ?rev:bool -> t -> (key * img) list
val compare_all : t -> t -> int
val equal_all : t -> t -> bool
end) ->
sig
type key = Map.key
type img = Map.img
type t
val empty : t
val is_empty : t -> bool
val add : key -> img -> t -> t
val find : key -> t -> img
val remove : key -> t -> t
val mem : key -> t -> bool
val iter : (key -> img -> unit) -> t -> unit
val map : (img -> img) -> t -> t
val mapi : (key -> img -> img) -> t -> t
val fold : (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val compare : t -> t -> int
val equal : t -> t -> bool
val add' : key -> img option -> t -> t
val find' : key -> t -> img option
val add_list : (key * img) list -> t -> t
val to_list : t -> (key * img) list
val from_list : (key * img) list -> t
val map_to_list : (key -> img -> 'a) -> t -> 'a list
val mapi_and_map_to_list :
(key -> img -> img * 'a) -> t -> t * 'a list
val domain : t -> key list
val fold_two :
(key -> img option -> img option -> 'a -> 'a) ->
'a -> t -> t -> 'a
val restrict : key list -> t -> t
val iter_all : ?rev:bool -> (key -> img -> unit) -> t -> unit
val map_all : ?rev:bool -> (img -> img) -> t -> t
val mapi_all : ?rev:bool -> (key -> img -> img) -> t -> t
val fold_all :
?rev:bool -> (key -> img -> 'a -> 'a) -> t -> 'a -> 'a
val to_list_all : ?rev:bool -> t -> (key * img) list
val compare_all : t -> t -> int
val equal_all : t -> t -> bool
val string_of : t -> string
end
end