Identifiers: program variables and logical variables
module HashQueue : InferStdlib.IStd.Hash_queue.S with type HashQueue.Key.t = t
module NameGenerator : sig ... end
val kprimed : kind
val knormal : kind
val kfootprint : kind
val create_none : unit ‑> t
Create a "null" identifier for situations where the IR requires an id that will never be read
val update_name_generator : t list ‑> unit
Update the name generator so that the given id's are not generated again
val create_path : string ‑> t
Generate a normal identifier whose name encodes a path given as a string.
val hashqueue_of_sequence : ?init:unit HashQueue.t ‑> t InferStdlib.IStd.Sequence.t ‑> unit HashQueue.t
val set_of_sequence : ?init:Set.t ‑> t InferStdlib.IStd.Sequence.t ‑> Set.t