Add a first runtime function. Positive fragment seems to work.
[tatoo.git] / src / test.ml
index 2dd1cae..3216e71 100644 (file)
 (***********************************************************************)
 
 (*
-  Time-stamp: <Last modified on 2013-03-04 16:38:27 CET by Kim Nguyen>
+  Time-stamp: <Last modified on 2013-03-05 15:26:51 CET by Kim Nguyen>
 *)
 
 (** use: xml_file "XPath querie"
     or : xml_file -f XPath_querie_file
-    only the first line of XPath_querie_file is read 
+    only the first line of XPath_querie_file is read
 *)
 
 module F = Auto.Formula
@@ -47,7 +47,13 @@ open Format
 let () =
   fprintf err_formatter "Query: %a\n%!" Xpath.Ast.print_path query;
   fprintf err_formatter "Automata: %a\n%!" Auto.Ata.print auto;
-  fprintf err_formatter "Document:\n%!";
-  Tree.Naive.print_xml stderr doc (Tree.Naive.root doc);
-  exit 0
+  fprintf err_formatter "Evaluating automaton:\n%!";
+  let module Naive = Auto.Eval.Make(Tree.Naive) in
+  let results = Naive.eval auto doc (Tree.Naive.root doc) in
+  List.iter (fun n ->
+    Tree.Naive.print_xml stderr doc n;
+    flush stderr;
+    output_string stderr "\n-------------------\n";
+  ) results
+