-let test filename query output =
- Printf.eprintf "Parsing document : %!";
- let v = time Tree.Binary.parse_xml_uri filename in
-(* Tree.dump v;
- Printf.eprintf "\n\n\n\n\n%!";
- Tree.Binary.print_xml_fast stderr v *)
- Printf.eprintf "Full Traversal\n%!";
- time (Tree.full_traversal) v;
- Printf.eprintf "Traversal\n%!";
- time (Tree.traversal) v;
- Printf.eprintf "CPP Traversal\n%!";
- time (Tree.cpp_traversal) v
-
-
-let main filename query output =
- Printf.eprintf "Parsing document : %!";
- let v = time Tree.Binary.parse_xml_uri filename in
- MM(v,__LOCATION__);
- a := Some (v);
- a := None;
- Printf.eprintf "Parsing query : ";
- let query = try
- time
- XPath.Parser.parse_string query
- with
- Ulexer.Loc.Exc_located ((x,y),e) -> Printf.eprintf "character %i-%i %s\n" x y (Printexc.to_string e);exit 1
- in
- Printf.eprintf "Compiling query : ";
- let auto = time XPath.Compile.compile query in
- XPath.Ast.print Format.err_formatter query;
- Format.eprintf "\n%!";