(**************************************************************************)
(*                                                                        *)
(*  Copyright (C) Jean-Christophe Filliatre                               *)
(*                                                                        *)
(*  This software is free software; you can redistribute it and/or        *)
(*  modify it under the terms of the GNU Library General Public           *)
(*  License version 2.1, with the special exception on linking            *)
(*  described in file LICENSE.                                            *)
(*                                                                        *)
(*  This software 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.                  *)
(*                                                                        *)
(**************************************************************************)

(* This module provides a highly efficient implementation of sets of integers
   when the elements can be represented as bits of machine integers,
   i.e. when elements belong to the closed interval [0..word_size-2].

   For greater efficiency, the functions [add], [remove], [singleton]
   and [mem] assume the element to be in the interval [0..word_size-2];
   If needed, write your own wrappers around these functions to perform
   the checks. *)

include Set.S with type elt = int

val max_value : int
  (* the maximal possible value for an element (30 on a 32-bit architecture
     and 62 on a 64-bits architecture) *)

val full : t
  (* The set [{0,1,2,...,30}] on a 32-bit architecture
     (resp. [{0,1,2,...,62}] on a 64-bit architecture). *)

val print : Format.formatter -> t -> unit
  (* Prints a set as [{x1,x2,...,xn}]. *)


This document was generated using caml2html