Module Nameops
val make_ident : string -> int option -> Names.Id.tval repr_ident : Names.Id.t -> string * int optionval atompart_of_id : Names.Id.t -> stringremove trailing digits
val root_of_id : Names.Id.t -> Names.Id.tremove trailing digits, ' and _
val add_suffix : Names.Id.t -> string -> Names.Id.tval add_prefix : string -> Names.Id.t -> Names.Id.t
module Subscript : sig ... endval has_subscript : Names.Id.t -> boolval get_subscript : Names.Id.t -> Names.Id.t * Subscript.tSplit an identifier into a base name and a subscript.
val add_subscript : Names.Id.t -> Subscript.t -> Names.Id.tAppend the subscript to the identifier.
val increment_subscript : Names.Id.t -> Names.Id.tReturn the same identifier as the original one but whose subscript is incremented. If the original identifier does not have a suffix,
0is appended to it.Example mappings:
bar↦bar0bar0↦bar1bar00↦bar01bar1↦bar2bar01↦bar01bar9↦bar10bar09↦bar10bar99↦bar100
val forget_subscript : Names.Id.t -> Names.Id.t
module Name : sig ... endval pr_meta : Constr.metavariable -> Pp.tMetavariables
val string_of_meta : Constr.metavariable -> string