Abstract result sets beind a Node_list interface.
[tatoo.git] / src / tatoo.ml
index 9fb7045..24e212f 100644 (file)
@@ -104,9 +104,10 @@ let main () =
       Logger.msg `STATS "@[Automaton: @\n%a@]" Ata.print auto) auto_list;
   end;
 
-  let module Naive = Run.Make(Naive_tree) in
+  let module Naive = Run.Make(Naive_tree)(Naive_node_list) in
   let result_list =
-    let root = [ Naive_tree.root doc] in
+
+    let root = Naive_node_list.(add (Naive_tree.root doc) (create())) in
     let f, msg =
       match !Options.parallel, !Options.compose with
         true, true ->
@@ -134,10 +135,10 @@ let main () =
       output_string output (string_of_int !count);
       output_string output "\" >\n";
       if !Options.count then begin
-        output_string output (string_of_int (List.length results));
+        output_string output (string_of_int (Naive_node_list.length results));
         output_char output '\n';
       end else
-        List.iter (fun n ->
+        Naive_node_list.iter (fun n ->
           Naive_tree.print_xml output doc n;
           output_char output '\n'
         ) results;