X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=generator%2Fgenerator_pr.ml;h=221a8ebd7ff51850013b48bad7e91b8c810a234e;hb=319e946b92e175c05cdd1fdcb85c9b86f5631011;hp=eef565e0c745aa32788e0a210cb6fc8a17ca62ab;hpb=04d8209077d2227eb1d42695ba71147f78987050;p=libguestfs.git diff --git a/generator/generator_pr.ml b/generator/generator_pr.ml index eef565e..221a8eb 100644 --- a/generator/generator_pr.ml +++ b/generator/generator_pr.ml @@ -23,9 +23,18 @@ open Printf open Generator_utils -(* 'pr' prints to the current output file. *) +(* Output channel, 'pr' prints to this. *) let chan = ref Pervasives.stdout + +(* Number of lines generated. *) let lines = ref 0 + +(* Name of each file generated. *) +let files = ref [] + +(* Print-to-current-output function, used everywhere. It has + * printf-like semantics. + *) let pr fs = ksprintf (fun str -> @@ -35,6 +44,8 @@ let pr fs = ) fs let output_to filename k = + files := filename :: !files; + let filename_new = filename ^ ".new" in chan := open_out filename_new; k (); @@ -54,3 +65,6 @@ let output_to filename k = let get_lines_generated () = !lines + +let get_files_generated () = + List.rev !files