only the first line of XPath_querie_file is read
*)
+open Format
-let doc =
+let doc () =
let fd = open_in Sys.argv.(1) in
let d = Tree.load_xml_file fd in
- close_in fd; d
-
+ close_in fd;
+ fprintf err_formatter "Parse Tree OK ! ";
+ d
-let query =
+let query () =
let arg2 = Sys.argv.(2) in
if arg2 = "-f"
then let fq = open_in Sys.argv.(3) in
let q = XPath.parse_file fq in
- close_in fq; q
- else XPath.parse_string arg2
-
-open Format
-
-let build_asta () =
+ close_in fq;
+ fprintf err_formatter "Parse query OK ! ";
+ q
+ else let q = XPath.parse_string arg2 in
+ fprintf err_formatter "Parse query OK ! ";
+ q
+
+let build_asta query =
let asta = Compil.trans query in
- fprintf err_formatter "COMPIL OK\n";
+ fprintf err_formatter "Compil OK !\n";
asta
let () =
- fprintf err_formatter "Query: %a\n%!" XPath.Ast.print query;
- fprintf err_formatter "Asta: %a\n%!" Asta.print (build_asta());
- fprintf err_formatter "Document:\n%!";
- Tree.print_xml stderr doc (Tree.root doc);
+ let query = query () in
+ let doc = doc () in
+ let asta = build_asta query in
+ fprintf err_formatter "@[<v 0> ##### Query #####@. %a@]@ "
+ XPath.Ast.print query;
+ Asta.print err_formatter asta;
+ fprintf err_formatter "@[<v 0> ##### Doc #####@.%a@]@ "
+ Tree.print_xml doc (Tree.root doc);
exit 0