https://github.com/EasyCrypt/easycrypt
Tip revision: 846710a2a656834065e745d19416ebdc83158f55 authored by Benjamin Gregoire on 14 July 2019, 06:50:07 UTC
Start restructuration of the code to be able to avant mutual dependency between type and mpath
Start restructuration of the code to be able to avant mutual dependency between type and mpath
Tip revision: 846710a
ecUid.mli
(* --------------------------------------------------------------------
* Copyright (c) - 2012--2016 - IMDEA Software Institute
* Copyright (c) - 2012--2018 - Inria
* Copyright (c) - 2012--2018 - Ecole Polytechnique
*
* Distributed under the terms of the CeCILL-C-V1 license
* -------------------------------------------------------------------- *)
(* -------------------------------------------------------------------- *)
open EcMaps
open EcSymbols
(* -------------------------------------------------------------------- *)
val unique : unit -> int
(* -------------------------------------------------------------------- *)
type uid = int
type uidmap
val create : unit -> uidmap
val lookup : uidmap -> symbol -> uid option
val forsym : uidmap -> symbol -> uid
(* -------------------------------------------------------------------- *)
val uid_equal : uid -> uid -> bool
val uid_compare : uid -> uid -> int
module Muid : Map.S with type key = uid
module Suid : Set.S with module M = Map.MakeBase(Muid)
(* -------------------------------------------------------------------- *)
module NameGen : sig
type t
val ofint : int -> string
val bulk : ?fmt:(string -> string) -> int -> string list
val create : unit -> t
val get : t -> uid -> string
end