9 sig |
9 sig |
10 val print_mode: string list ref |
10 val print_mode: string list ref |
11 val std_output: string -> unit |
11 val std_output: string -> unit |
12 val std_error: string -> unit |
12 val std_error: string -> unit |
13 val immediate_output: string -> unit |
13 val immediate_output: string -> unit |
14 val writeln_default: string -> unit |
14 val writeln_default: string -> unit |
15 val writeln_fn: (string -> unit) ref |
15 val writeln_fn: (string -> unit) ref |
16 val priority_fn: (string -> unit) ref |
16 val priority_fn: (string -> unit) ref |
17 val tracing_fn: (string -> unit) ref |
17 val tracing_fn: (string -> unit) ref |
18 val warning_fn: (string -> unit) ref |
18 val warning_fn: (string -> unit) ref |
19 val error_fn: (string -> unit) ref |
19 val error_fn: (string -> unit) ref |
20 val panic_fn: (string -> unit) ref |
20 val panic_fn: (string -> unit) ref |
21 val info_fn: (string -> unit) ref |
21 val info_fn: (string -> unit) ref |
22 val debug_fn: (string -> unit) ref |
22 val debug_fn: (string -> unit) ref |
23 val writeln: string -> unit (* default output (in messages window) *) |
23 val writeln: string -> unit (*default output (in messages window)*) |
24 val priority: string -> unit (* high-priority (maybe modal/pop-up; must be displayed) *) |
24 val priority: string -> unit (*high-priority (maybe modal/pop-up; must be displayed)*) |
25 val tracing: string -> unit (* tracing message (possibly in tracing window) *) |
25 val tracing: string -> unit (*tracing message (possibly in tracing window)*) |
26 val warning: string -> unit (* display warning of non-fatal error condition *) |
26 val warning: string -> unit (*display warning of non-fatal situation*) |
27 val error_msg: string -> unit (* display fatal error (possibly modal msg) *) |
27 val error_msg: string -> unit (*display fatal error (possibly modal msg)*) |
28 val error: string -> 'a (* display message as above, raise exn *) |
28 val error: string -> 'a (*display message as above, raise exn*) |
29 val sys_error: string -> 'a (* internal fatal error condition; raise exn *) |
29 val sys_error: string -> 'a (*internal fatal error condition; raise exn*) |
30 val panic: string -> unit (* unrecoverable fatal error; exits system! *) |
30 val panic: string -> unit (*unrecoverable fatal error; exits system!*) |
31 val info: string -> unit (* incidental information message (e.g. timing) *) |
31 val info: string -> unit (*incidental information message (e.g. timing)*) |
32 val debug: string -> unit (* internal debug messages, maybe hidden/disabled *) |
32 val debug: string -> unit (*internal debug messages*) |
33 val show_debug_msgs: bool ref |
33 val show_debug_msgs: bool ref |
|
34 val no_warnings: ('a -> 'b) -> 'a -> 'b |
34 val assert: bool -> string -> unit |
35 val assert: bool -> string -> unit |
35 val deny: bool -> string -> unit |
36 val deny: bool -> string -> unit |
36 val assert_all: ('a -> bool) -> 'a list -> ('a -> string) -> unit |
37 val assert_all: ('a -> bool) -> 'a list -> ('a -> string) -> unit |
37 val overwrite_warn: (''a * 'b) list * (''a * 'b) -> string -> (''a * 'b) list |
38 val overwrite_warn: (''a * 'b) list * (''a * 'b) -> string -> (''a * 'b) list |
38 datatype 'a error = Error of string | OK of 'a |
39 datatype 'a error = Error of string | OK of 'a |
128 fun priority s = ! priority_fn (output s); |
129 fun priority s = ! priority_fn (output s); |
129 fun tracing s = ! tracing_fn (output s); |
130 fun tracing s = ! tracing_fn (output s); |
130 fun warning s = ! warning_fn (output s); |
131 fun warning s = ! warning_fn (output s); |
131 fun info s = ! info_fn (output s); |
132 fun info s = ! info_fn (output s); |
132 |
133 |
|
134 fun no_warnings f = setmp warning_fn (K ()) f; |
|
135 |
133 val show_debug_msgs = ref false; |
136 val show_debug_msgs = ref false; |
134 fun debug s = if !show_debug_msgs then ! debug_fn (output s) else () |
137 fun debug s = if ! show_debug_msgs then ! debug_fn (output s) else () |
135 |
138 |
136 fun error_msg s = ! error_fn (output s); |
139 fun error_msg s = ! error_fn (output s); |
137 fun panic_msg s = ! panic_fn (output s); |
140 fun panic_msg s = ! panic_fn (output s); |
|
141 |
138 |
142 |
139 (* add_mode *) |
143 (* add_mode *) |
140 |
144 |
141 fun add_mode name (f, g, h) = |
145 fun add_mode name (f, g, h) = |
142 (if is_none (lookup_mode name) then () |
146 (if is_none (lookup_mode name) then () |