Frama-C API - Intmap
Maps with integers keys using Patricia Trees.
From the paper of Chris Okasaki and Andrew Gill: 'Fast Mergeable Integer Maps'.
val singleton : int -> 'a -> 'a tval compare : ('a -> 'a -> int) -> 'a t -> 'a t -> intval equal : ('a -> 'a -> bool) -> 'a t -> 'a t -> boolval is_empty : 'a t -> boolval mem : int -> 'a t -> boolval find : int -> 'a t -> 'aval add : int -> 'a -> 'a t -> 'a tval remove : int -> 'a t -> 'a tval insert : (int -> 'a -> 'a -> 'a) -> int -> 'a -> 'a t -> 'a tinsert (fun key v old -> ...) key v map
val change : (int -> 'b -> 'a option -> 'a option) -> int -> 'b -> 'a t -> 'a tval iter : ('a -> unit) -> 'a t -> unitval iteri : (int -> 'a -> unit) -> 'a t -> unitval fold : ('a -> 'b -> 'b) -> 'a t -> 'b -> 'bval foldi : (int -> 'a -> 'b -> 'b) -> 'a t -> 'b -> 'bval mapl : (int -> 'a -> 'b) -> 'a t -> 'b listval map : ('a -> 'b) -> 'a t -> 'b tval mapi : (int -> 'a -> 'b) -> 'a t -> 'b tval mapf : (int -> 'a -> 'b option) -> 'a t -> 'b tval mapq : (int -> 'a -> 'a option) -> 'a t -> 'a tval filter : (int -> 'a -> bool) -> 'a t -> 'a tval partition : (int -> 'a -> bool) -> 'a t -> 'a t * 'a tval partition_split : (int -> 'a -> 'a option * 'a option) -> 'a t -> 'a t * 'a tval for_all : (int -> 'a -> bool) -> 'a t -> boolval exists : (int -> 'a -> bool) -> 'a t -> boolval union : (int -> 'a -> 'a -> 'a) -> 'a t -> 'a t -> 'a tval inter : (int -> 'a -> 'b -> 'c) -> 'a t -> 'b t -> 'c tval interf : (int -> 'a -> 'b -> 'c option) -> 'a t -> 'b t -> 'c tval interq : (int -> 'a -> 'a -> 'a option) -> 'a t -> 'a t -> 'a tval diffq : (int -> 'a -> 'a -> 'a option) -> 'a t -> 'a t -> 'a tval subsetk : 'a t -> 'b t -> boolval subset : (int -> 'a -> 'b -> bool) -> 'a t -> 'b t -> boolval intersect : 'a t -> 'b t -> boolval intersectf : (int -> 'a -> 'b -> bool) -> 'a t -> 'b t -> boolval merge : (int -> 'a option -> 'b option -> 'c option) -> 'a t -> 'b t -> 'c tval iter2 : (int -> 'a option -> 'b option -> unit) -> 'a t -> 'b t -> unitval iterk : (int -> 'a -> 'b -> unit) -> 'a t -> 'b t -> unitval pp_bits : Stdlib.Format.formatter -> int -> unitval pp_tree : string -> Stdlib.Format.formatter -> 'a t -> unit