new tsig components;
authorwenzelm
Wed, 29 Sep 1999 13:50:26 +0200
changeset 7635 4c1d2eb68db8
parent 7634 c326808da921
child 7636 102a4b6b83a6
new tsig components;
src/Pure/display.ML
--- a/src/Pure/display.ML	Wed Sep 29 13:49:49 1999 +0200
+++ b/src/Pure/display.ML	Wed Sep 29 13:50:26 1999 +0200
@@ -178,6 +178,13 @@
     fun pretty_ty (t, n) = Pretty.block
       [Pretty.str t, Pretty.spc 1, Pretty.str (string_of_int n)];
 
+    fun pretty_log_types ts = Pretty.block
+      (Pretty.breaks (Pretty.str "logical types:" :: map Pretty.str ts));
+
+    fun pretty_witness None = Pretty.str "universal non-emptiness witness: --"
+      | pretty_witness (Some (T, S)) = Pretty.block
+          [Pretty.str "universal non-emptiness witness:", Pretty.brk 1, prt_typ T, Pretty.brk 1, prt_sort S];
+
     fun pretty_abbr (t, (vs, rhs)) = Pretty.block
       [prt_typ (Type (t, map (fn v => TVar ((v, 0), [])) vs)),
         Pretty.str " =", Pretty.brk 1, prt_typ rhs];
@@ -189,7 +196,7 @@
 
     val {self = _, tsig, const_tab, syn = _, path, spaces, data} = Sign.rep_sg sg;
     val spaces' = Library.sort_wrt fst spaces;
-    val {classes, classrel, default, tycons = type_tab, abbrs, arities} =
+    val {classes, classrel, default, tycons = type_tab, log_types, univ_witness, abbrs, arities} =
       Type.rep_tsig tsig;
     val tycons = Sign.cond_extern_table sg Sign.typeK type_tab;
     val consts = Sign.cond_extern_table sg Sign.constK const_tab;
@@ -201,6 +208,8 @@
     Pretty.writeln (pretty_classes classes);
     Pretty.writeln (Pretty.big_list "class relation:" (map pretty_classrel (Symtab.dest classrel)));
     Pretty.writeln (pretty_default default);
+    Pretty.writeln (pretty_log_types log_types);
+    Pretty.writeln (pretty_witness univ_witness);
     Pretty.writeln (Pretty.big_list "type constructors:" (map pretty_ty tycons));
     Pretty.writeln (Pretty.big_list "type abbreviations:" (map pretty_abbr (Symtab.dest abbrs)));
     Pretty.writeln (Pretty.big_list "type arities:" (flat (map pretty_arities (Symtab.dest arities))));