/[svn]/misc/bool.mli
ViewVC logotype

Diff of /misc/bool.mli

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 270 by abate, Tue Jul 10 17:21:03 2007 UTC revision 271 by abate, Tue Jul 10 17:21:17 2007 UTC
# Line 1  Line 1 
1  type 'a obj = { id : int; mutable v : 'a }  module type ARG =
2    sig
3        type 'a t
4        val dump: Format.formatter -> 'a t -> unit
5    
6        val equal: 'a t -> 'a t -> bool
7        val hash: 'a t -> int
8        val compare: 'a t -> 'a t -> int
9    end
10    
11  type 'a t (* = True | False | Split of 'a obj * 'a t * 'a t * 'a t *)  module type S =
12    sig
13      type 'a elem
14      type 'a t
15    
16      val dump: Format.formatter -> 'a t -> unit
17    
18  val equal : 'a t -> 'a t -> bool  val equal : 'a t -> 'a t -> bool
19  val compare: 'a t -> 'a t -> int  val compare: 'a t -> 'a t -> int
20  val hash: 'a t -> int  val hash: 'a t -> int
21    
22  val iter: ('a -> unit) -> ('a t -> unit)    val get: 'a t -> ('a elem list * 'a elem list) list
23    
24  val print :    val empty : 'a t
25    (Format.formatter -> 'a -> unit) -> Format.formatter -> 'a t -> unit    val full  : 'a t
26  val dump : Format.formatter -> 'a t -> unit    val cup   : 'a t -> 'a t -> 'a t
27      val cap   : 'a t -> 'a t -> 'a t
28      val diff  : 'a t -> 'a t -> 'a t
29      val atom  : 'a elem -> 'a t
30    
31  val dnf : 'a t -> ('a list * 'a list) list    val iter: ('a elem-> unit) -> 'a t -> unit
32    
33  val compute: empty:'b -> any:'b -> cup:('b -> 'b -> 'b)    val compute: empty:'b -> full:'b -> cup:('b -> 'b -> 'b)
34    -> cap:('b -> 'b -> 'b) -> diff:('b -> 'b -> 'b) ->    -> cap:('b -> 'b -> 'b) -> diff:('b -> 'b -> 'b) ->
35    atom:('a -> 'b) -> 'a t -> 'b      atom:('a elem -> 'b) -> 'a t -> 'b
36    
37  val empty : 'a t    val print: string -> (Format.formatter -> 'a elem -> unit) -> 'a t ->
38  val any : 'a t      (Format.formatter -> unit) list
39  val ( !! ) : 'a obj -> 'a t  end
40  val ( ++ ) : 'a t -> 'a t -> 'a t  
41  val ( ** ) : 'a t -> 'a t -> 'a t  module Make(X : ARG) : S with type 'a elem = 'a X.t
 val ( // ) : 'a t -> 'a t -> 'a t  

Legend:
Removed from v.270  
changed lines
  Added in v.271

CVS Admin">CVS Admin
ViewVC Help
Powered by ViewVC 1.1.5