(************************************************************************) (* v * The Coq Proof Assistant / The Coq Development Team *) (* anomaly (Pp.str ("Unknown grammar universe: "^s)) (** Entries are registered with a unique name *) let entries = ref String.Set.empty let create u name = let uname = u ^ ":" ^ name in let () = if String.Set.mem uname !entries then anomaly (Pp.str ("Entry " ^ uname ^ " already defined")) in let () = entries := String.Set.add uname !entries in (u, name) let dynamic name = ("", name) let unsafe_of_name (u, s) = let uname = u ^ ":" ^ s in assert (String.Set.mem uname !entries); (u, s) let repr = function | ("", u) -> Dynamic u | (u, s) -> Static (u, s)