diff options
Diffstat (limited to 'parsing')
| -rw-r--r-- | parsing/printer.ml | 11 | ||||
| -rw-r--r-- | parsing/printer.mli | 2 |
2 files changed, 13 insertions, 0 deletions
diff --git a/parsing/printer.ml b/parsing/printer.ml index 8ef206649e..6119f5d1e7 100644 --- a/parsing/printer.ml +++ b/parsing/printer.ml @@ -527,3 +527,14 @@ let pr_assumptionset env s = in (Option.default (mt ()) vars) ++ (Option.default (mt ()) axioms) +let cmap_to_list m = Cmap.fold (fun k v acc -> v :: acc) m [] + +open Typeclasses + +let pr_instance i = + pr_global (ConstRef (instance_impl i)) + +let pr_instance_gmap insts = + prlist_with_sep fnl (fun (gr, insts) -> + prlist_with_sep fnl pr_instance (cmap_to_list insts)) + (Gmap.to_list insts) diff --git a/parsing/printer.mli b/parsing/printer.mli index 262826ac8c..a4e0cd570f 100644 --- a/parsing/printer.mli +++ b/parsing/printer.mli @@ -137,3 +137,5 @@ val set_printer_pr : printer_pr -> unit val default_printer_pr : printer_pr +val pr_instance_gmap : (global_reference, Typeclasses.instance Names.Cmap.t) Gmap.t -> + Pp.std_ppcmds |
