Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
intset.ml1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57(**************************************************************************) (* *) (* This file is part of WP plug-in of Frama-C. *) (* *) (* Copyright (C) 2007-2023 *) (* CEA (Commissariat a l'energie atomique et aux energies *) (* alternatives) *) (* *) (* you can redistribute it and/or modify it under the terms of the GNU *) (* Lesser General Public License as published by the Free Software *) (* Foundation, version 2.1. *) (* *) (* It is distributed in the hope that it will be useful, *) (* but WITHOUT ANY WARRANTY; without even the implied warranty of *) (* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *) (* GNU Lesser General Public License for more details. *) (* *) (* See the GNU Lesser General Public License version 2.1 *) (* for more details (enclosed in the file licenses/LGPLv2.1). *) (* *) (**************************************************************************) (* ---------------------------------------------------------------------- *) (* --- Patricia Sets By L. Correnson & P. Baudin --- *) (* ---------------------------------------------------------------------- *) type t = unit Intmap.t let empty = Intmap.empty let singleton x = Intmap.singleton x () let add x = Intmap.add x () let remove x = Intmap.remove x let is_empty = Intmap.is_empty let mem = Intmap.mem let cardinal = Intmap.size let compare = Intmap.compare (fun () () -> 0) let equal = Intmap.equal (fun () () -> true) let _keep _ _ _ = () let _keepq _ _ _ = Some () let _same _ () () = true let union = Intmap.union _keep let inter = Intmap.interq _keepq let diff = Intmap.diffq _keepq let subset = Intmap.subset _same let intersect = Intmap.intersectf _same let iter f = Intmap.iteri (fun i () -> f i) let fold f = Intmap.foldi (fun i () e -> f i e) let filter f = Intmap.filter (fun i () -> f i) let partition f = Intmap.partition (fun i () -> f i) let for_all f = Intmap.for_all (fun i () -> f i) let exists f = Intmap.exists (fun i () -> f i) let elements = Intmap.mapl (fun i () -> i)