package coq

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module NameopsSource

Identifiers and names

Sourceval make_ident : string -> int option -> Names.Id.t
Sourceval repr_ident : Names.Id.t -> string * int option
Sourceval atompart_of_id : Names.Id.t -> string

remove trailing digits

Sourceval root_of_id : Names.Id.t -> Names.Id.t

remove trailing digits, ' and _

Sourceval add_suffix : Names.Id.t -> string -> Names.Id.t
Sourceval add_prefix : string -> Names.Id.t -> Names.Id.t

Below, by subscript we mean a suffix composed solely from (decimal) digits.

Sourcemodule Subscript : sig ... end
Sourceval has_subscript : Names.Id.t -> bool
Sourceval get_subscript : Names.Id.t -> Names.Id.t * Subscript.t

Split an identifier into a base name and a subscript.

Sourceval add_subscript : Names.Id.t -> Subscript.t -> Names.Id.t

Append the subscript to the identifier.

Sourceval increment_subscript : Names.Id.t -> Names.Id.t

Return the same identifier as the original one but whose subscript is incremented. If the original identifier does not have a suffix, 0 is appended to it.

Example mappings:

barbar0

bar0bar1

bar00bar01

bar1bar2

bar01bar01

bar9bar10

bar09bar10

bar99bar100

Sourceval forget_subscript : Names.Id.t -> Names.Id.t
Sourcemodule Name : sig ... end

Metavariables

Sourceval string_of_meta : Constr.metavariable -> string
OCaml

Innovation. Community. Security.