mirror of
https://github.com/c-cube/sidekick.git
synced 2025-12-06 19:25:36 -05:00
feat(gensym): add reset
This commit is contained in:
parent
0797ff0409
commit
2092bbef3f
2 changed files with 5 additions and 0 deletions
|
|
@ -43,6 +43,8 @@ let create tst : t =
|
||||||
incr id_;
|
incr id_;
|
||||||
{ tst; self_id; fresh = 0 }
|
{ tst; self_id; fresh = 0 }
|
||||||
|
|
||||||
|
let reset self = self.fresh <- 0
|
||||||
|
|
||||||
let fresh_term ?(opaque_to_cc = false) (self : t) ~pre (ty : ty) : Term.t =
|
let fresh_term ?(opaque_to_cc = false) (self : t) ~pre (ty : ty) : Term.t =
|
||||||
let id = self.fresh in
|
let id = self.fresh in
|
||||||
self.fresh <- 1 + self.fresh;
|
self.fresh <- 1 + self.fresh;
|
||||||
|
|
|
||||||
|
|
@ -17,3 +17,6 @@ val create : Term.store -> t
|
||||||
|
|
||||||
val fresh_term : ?opaque_to_cc:bool -> t -> pre:string -> ty -> term
|
val fresh_term : ?opaque_to_cc:bool -> t -> pre:string -> ty -> term
|
||||||
(** Make a fresh term of the given type *)
|
(** Make a fresh term of the given type *)
|
||||||
|
|
||||||
|
val reset : t -> unit
|
||||||
|
(** Reset to initial state *)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue