Skip to content

Commit 5187562

Browse files
committed
Add expr_raw.mli
1 parent abb5336 commit 5187562

File tree

2 files changed

+460
-1
lines changed

2 files changed

+460
-1
lines changed

src/smtml/expr_raw.ml

Lines changed: 94 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,13 +80,106 @@ include (
8080

8181
val raw_concat : t -> t -> t
8282

83+
module Hc : sig
84+
val clear : unit -> unit
85+
86+
val stats : unit -> Hashtbl.statistics
87+
88+
val length : unit -> int
89+
end
90+
8391
module Bool : sig
8492
val true_ : t
8593

8694
val false_ : t
8795

8896
val v : bool -> t
8997
end
98+
99+
module Set : sig
100+
type elt = t
101+
102+
type key = elt
103+
104+
type t
105+
106+
val empty : t
107+
108+
val is_empty : t -> bool
109+
110+
val mem : elt -> t -> bool
111+
112+
val add : elt -> t -> t
113+
114+
val singleton : elt -> t
115+
116+
val cardinal : t -> int
117+
118+
val is_singleton : t -> elt option
119+
120+
val remove : elt -> t -> t
121+
122+
val unsigned_min_elt : t -> elt
123+
124+
val unsigned_max_elt : t -> elt
125+
126+
val pop_unsigned_minimum : t -> (elt * t) option
127+
128+
val pop_unsigned_maximum : t -> (elt * t) option
129+
130+
val iter : (elt -> unit) -> t -> unit
131+
132+
val filter : (elt -> bool) -> t -> t
133+
134+
val for_all : (elt -> bool) -> t -> bool
135+
136+
val fold : (elt -> 'acc -> 'acc) -> t -> 'acc -> 'acc
137+
138+
val split : elt -> t -> t * bool * t
139+
140+
val pretty :
141+
?pp_sep:(Format.formatter -> unit -> unit)
142+
-> (Format.formatter -> elt -> unit)
143+
-> Format.formatter
144+
-> t
145+
-> unit
146+
147+
val union : t -> t -> t
148+
149+
val inter : t -> t -> t
150+
151+
val disjoint : t -> t -> bool
152+
153+
val subset : t -> t -> bool
154+
155+
val diff : t -> t -> t
156+
157+
val min_elt_inter : t -> t -> elt option
158+
159+
val max_elt_inter : t -> t -> elt option
160+
161+
val to_seq : t -> elt Seq.t
162+
163+
val to_rev_seq : t -> elt Seq.t
164+
165+
val add_seq : elt Seq.t -> t -> t
166+
167+
val of_seq : elt Seq.t -> t
168+
169+
val of_list : elt list -> t
170+
171+
val to_list : t -> elt list
172+
173+
val hash : t -> int
174+
175+
val to_int : t -> int
176+
177+
val equal : t -> t -> bool
178+
179+
val compare : t -> t -> int
180+
181+
val get_symbols : t -> Symbol.t list
182+
end
90183
end )
91184

92185
let unop = raw_unop
@@ -101,7 +194,7 @@ let cvtop = raw_cvtop
101194

102195
let naryop = raw_naryop
103196

104-
let extract ~high ~low = raw_extract ~high ~low
197+
let extract t ~high ~low = raw_extract t ~high ~low
105198

106199
let concat = raw_concat
107200

0 commit comments

Comments
 (0)