X-Git-Url: http://git.nguyen.vg/gitweb/?p=tatoo.git;a=blobdiff_plain;f=src%2Fmain.ml;h=d6a198662e3e2af96d27244a1fa99286794ef75c;hp=3216e71712a84f4a22f5a802f49856cbae62da9e;hb=9522266372edb18327f96b21213b4efc3798ee98;hpb=f8bc3114d2f36de5f743a7f6695b2353090f7e36 diff --git a/src/main.ml b/src/main.ml index 3216e71..d6a1986 100644 --- a/src/main.ml +++ b/src/main.ml @@ -14,21 +14,9 @@ (***********************************************************************) (* - Time-stamp: + Time-stamp: *) -(** use: xml_file "XPath querie" - or : xml_file -f XPath_querie_file - only the first line of XPath_querie_file is read -*) - -module F = Auto.Formula -module A = Auto.Ata -module X = Xpath.Compile - -(* to force ocaml build to add Formula to the dependency chain even if - we don't use it yet*) - let doc = let fd = open_in Sys.argv.(1) in let d = Tree.Naive.load_xml_file fd in @@ -49,11 +37,16 @@ let () = fprintf err_formatter "Automata: %a\n%!" Auto.Ata.print auto; fprintf err_formatter "Evaluating automaton:\n%!"; let module Naive = Auto.Eval.Make(Tree.Naive) in + let t1 = Unix.gettimeofday() in let results = Naive.eval auto doc (Tree.Naive.root doc) in + let teval = (Unix.gettimeofday () -. t1) *. 1000. in + let t1 = Unix.gettimeofday () in + output_string stdout "\n"; List.iter (fun n -> - Tree.Naive.print_xml stderr doc n; - flush stderr; - output_string stderr "\n-------------------\n"; - ) results - - + Tree.Naive.print_xml stdout doc n; + output_char stdout '\n' + ) results; + output_string stdout "\n"; + let tprint = (Unix.gettimeofday () -. t1) *. 1000. in + flush stdout; + fprintf err_formatter "evaluation time: %fms\nserialization time: %fms\n%!" teval tprint