PrettypSourceA Pretty-Printer for the Calculus of Inductive Constructions.
val print_context :
Environ.env ->
Evd.evar_map ->
bool ->
int option ->
Lib.library_segment ->
Pp.tval print_library_entry :
Environ.env ->
Evd.evar_map ->
bool ->
(Libobject.object_name * Lib.node) ->
Pp.t optionval print_eval :
Reductionops.reduction_function ->
Environ.env ->
Evd.evar_map ->
Constrexpr.constr_expr ->
EConstr.unsafe_judgment ->
Pp.tval print_name :
Environ.env ->
Evd.evar_map ->
Libnames.qualid Constrexpr.or_by_notation ->
UnivNames.univ_name_list option ->
Pp.tval print_about :
Environ.env ->
Evd.evar_map ->
Libnames.qualid Constrexpr.or_by_notation ->
UnivNames.univ_name_list option ->
Pp.ttype 'a locatable_info = {locate : Libnames.qualid -> 'a option;Locate the most precise object with the provided name if any.
*)locate_all : Libnames.qualid -> 'a list;Locate all objects whose name is a suffix of the provided name
*)shortest_qualid : 'a -> Libnames.qualid;Return the shortest name in the current context
*)name : 'a -> Pp.t;Data as printed by the Locate command
*)print : 'a -> Pp.t;Data as printed by the Print command
*)about : 'a -> Pp.t;Data as printed by the About command
*)}Generic data structure representing locatable objects.
Define a new type of locatable objects that can be reached via the corresponding generic vernacular commands. The string should be a unique name describing the kind of objects considered and that is added as a grammar command prefix for vernacular commands Locate.
type object_pr = {print_inductive : Names.MutInd.t -> UnivNames.univ_name_list option -> Pp.t;print_constant_with_infos : Names.Constant.t ->
UnivNames.univ_name_list option ->
Pp.t;print_section_variable : Environ.env -> Evd.evar_map -> Names.variable -> Pp.t;print_syntactic_def : Environ.env -> Names.KerName.t -> Pp.t;print_module : bool -> Names.ModPath.t -> Pp.t;print_modtype : Names.ModPath.t -> Pp.t;print_named_decl : Environ.env ->
Evd.evar_map ->
Constr.named_declaration ->
Pp.t;print_library_entry : Environ.env ->
Evd.evar_map ->
bool ->
(Libobject.object_name * Lib.node) ->
Pp.t option;print_context : Environ.env ->
Evd.evar_map ->
bool ->
int option ->
Lib.library_segment ->
Pp.t;print_typed_value_in_env : Environ.env ->
Evd.evar_map ->
(EConstr.constr * EConstr.types) ->
Pp.t;print_eval : Reductionops.reduction_function ->
Environ.env ->
Evd.evar_map ->
Constrexpr.constr_expr ->
EConstr.unsafe_judgment ->
Pp.t;}