projects
/
SXSI
/
xpathcomp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use the code alignment macro also in lexindex_stub.cpp
[SXSI/xpathcomp.git]
/
src
/
logger.ml
diff --git
a/src/logger.ml
b/src/logger.ml
index
a206382
..
7796b73
100644
(file)
--- a/
src/logger.ml
+++ b/
src/logger.ml
@@
-3,9
+3,16
@@
open Format
type t = string
type level = int
type t = string
type level = int
-let loggers = [ "top-down-run"; "top-down-approx"; "result-set"; "level2-jit"; "res-jit"; "grammar"; "twopass";"transition" ]
+let loggers = [ "top-down-run";
+ "top-down-approx";
+ "result-set";
+ "level2-jit";
+ "res-jit";
+ "twopass";
+ "transition";
+ "bottom-up" ]
let active_loggers : (t, int) Hashtbl.t = Hashtbl.create 17
let active_loggers : (t, int) Hashtbl.t = Hashtbl.create 17
-
+let margin = List.fold_left (fun m l -> max m (String.length l)) 0 loggers
let available () = loggers
let is_logger s = List.mem s loggers
let available () = loggers
let is_logger s = List.mem s loggers
@@
-17,9
+24,22
@@
let deactivate s = Hashtbl.remove active_loggers s
let logger_output = ref err_formatter
let set_output f = logger_output := f
let logger_output = ref err_formatter
let set_output f = logger_output := f
-let log t l
s
=
+let log t l
fmt
=
if l <= level t
then begin
if l <= level t
then begin
- fprintf !logger_output "%s: " t;
- fprintf !logger_output "%s%!" s
+ pp_open_hovbox !logger_output (margin + 3);
+ fprintf !logger_output "%-.*s : " margin t;
+ kfprintf (fun _ ->
+ pp_close_box !logger_output ();
+ fprintf !logger_output "@?@\n";
+ ) !logger_output fmt
end
end
+ else
+ ifprintf !logger_output fmt
+
+let print ppf fmt =
+ pp_open_hovbox ppf 0;
+ kfprintf (fun _ ->
+ pp_close_box ppf ();
+ fprintf ppf "@?")
+ ppf fmt