src/Pure/General/output.ML
changeset 38836 52cee2c5f219
parent 38236 d8c7be27e01d
child 38839 be9dace0ff58
equal deleted inserted replaced
38835:088502dfd89f 38836:52cee2c5f219
    43   val error_msg: string -> unit
    43   val error_msg: string -> unit
    44   val prompt: string -> unit
    44   val prompt: string -> unit
    45   val status: string -> unit
    45   val status: string -> unit
    46   val report: string -> unit
    46   val report: string -> unit
    47   val debugging: bool Unsynchronized.ref
    47   val debugging: bool Unsynchronized.ref
    48   val no_warnings_CRITICAL: ('a -> 'b) -> 'a -> 'b
       
    49   val debug: (unit -> string) -> unit
    48   val debug: (unit -> string) -> unit
    50 end;
    49 end;
    51 
    50 
    52 structure Output: OUTPUT =
    51 structure Output: OUTPUT =
    53 struct
    52 struct
   111 fun status s = ! status_fn (output s);
   110 fun status s = ! status_fn (output s);
   112 fun report s = ! report_fn (output s);
   111 fun report s = ! report_fn (output s);
   113 
   112 
   114 fun legacy_feature s = warning ("Legacy feature! " ^ s);
   113 fun legacy_feature s = warning ("Legacy feature! " ^ s);
   115 
   114 
   116 fun no_warnings_CRITICAL f = setmp_CRITICAL warning_fn (K ()) f;
       
   117 
       
   118 val debugging = Unsynchronized.ref false;
   115 val debugging = Unsynchronized.ref false;
   119 fun debug s = if ! debugging then ! debug_fn (output (s ())) else ()
   116 fun debug s = if ! debugging then ! debug_fn (output (s ())) else ()
   120 
   117 
   121 
   118 
   122 
   119