From 7cde682014e0dd179ae3bed029a07c8bf0c71157 Mon Sep 17 00:00:00 2001 From: letouzey Date: Wed, 11 May 2011 15:36:18 +0000 Subject: Print Module (Type) M now tries to print more details "Print Module M" prints now by default both a signature (fields with their types) and a body (fields with their types and transparent bodies). "Print Module Type M" could be used both when M is a module or a module Type, it will only display th signature of M. The earlier minimalist behavior (printing only the field names) could be reactivated by option "Set Short Module Printing". For the moment, the content of internal sub-modules and sub-modtypes are not displayed. Note: this commit is an experiment, many sitations are still unsupported. When such situations are encountered, Print Module will fall back on the earlier minimalist behavior. This might occur in particular in presence of "with" annotations, or in the conjonction of a non-global module (i.e. functor or module type) and internal sub-modules. Side effects of this commit: - a better compare function for global_reference, with no allocations at each comparison - Nametab.the_globrevtab is now searched according to user part only of a kernel_name - The printing of an inductive block is now in Printer, and rely less on the Nametab. Instead, we use identifiers in mind_typename and mind_consnames. Note that Print M.indu will not display anymore the pseudo-code "Inductive M.indu ..." but rather "Inductive indu..." git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@14117 85f007b7-540e-0410-9357-904b9bb8a0f7 --- library/libnames.mli | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'library/libnames.mli') diff --git a/library/libnames.mli b/library/libnames.mli index 1f49b6a4f..18b6ac49a 100644 --- a/library/libnames.mli +++ b/library/libnames.mli @@ -51,7 +51,11 @@ module RefOrdered : sig type t = global_reference val compare : global_reference -> global_reference -> int end - + +module RefOrdered_env : sig + type t = global_reference + val compare : global_reference -> global_reference -> int +end module Refset : Set.S with type elt = global_reference module Refmap : Map.S with type key = global_reference @@ -64,6 +68,11 @@ type extended_global_reference = | TrueGlobal of global_reference | SynDef of syndef_name +module ExtRefOrdered : sig + type t = extended_global_reference + val compare : t -> t -> int +end + (** {6 Dirpaths } *) val pr_dirpath : dir_path -> Pp.std_ppcmds -- cgit v1.2.3