Add more tests (broken, needs a refactoring of the build script)
[tatoo.git] / tools / split_path.ml
1 let parse q =
2   let p = Xpath.Parser.parse (Ulexing.from_utf8_string q) in
3   match p with
4     [ _ ] ->
5       List.map (fun p ->
6         let steps =
7           match p with
8             Xpath.Ast.Absolute l
9           | Xpath.Ast.Relative l ->  l
10         in
11         let nl =
12           List.map (fun s ->
13             let _ = Format.flush_str_formatter () in
14             Xpath.Ast.print_step Format.str_formatter s;
15             Format.flush_str_formatter()) steps
16         in
17         nl) p
18   | _ -> let _ = Format.flush_str_formatter () in
19          Xpath.Ast.print_path Format.str_formatter p;
20          [[ Format.flush_str_formatter() ]]
21
22 let main () =
23   if Array.length Sys.argv <> 2 then exit 1
24   else
25     let l = parse Sys.argv.(1) in
26     List.iter (fun s ->  Printf.printf "'%s' " s) (List.hd l);
27     Printf.printf "\n%!"
28
29 let () = main ()
30