/[svn]/driver/run.ml
ViewVC logotype

Diff of /driver/run.ml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 123 by abate, Tue Jul 10 17:05:54 2007 UTC revision 124 by abate, Tue Jul 10 17:08:19 2007 UTC
# Line 2  Line 2 
2    
3  let dump = ref None  let dump = ref None
4  let src  = ref []  let src  = ref []
5    let quiet = ref false
6    
7  let specs =  let specs =
8    [ "-dump", Arg.String (fun s -> dump := Some s), " specify filename for persistency" ]    [ "-dump", Arg.String (fun s -> dump := Some s),
9        " specify filename for persistency";
10        "-quiet", Arg.Set quiet,
11        "suppress normal output (typing, results)"
12     ]
13    
14  let () =  let () =
15    Arg.parse specs (fun s -> src := s :: !src)    Arg.parse specs (fun s -> src := s :: !src)
16      "cduce [options] [script]\n\nOptions:"      "cduce [options] [script]\n\nOptions:"
17    
18  let ppf = Format.std_formatter  let ppf =
19      if !quiet then Format.formatter_of_buffer (Buffer.create 1023)
20      else Format.std_formatter
21    let ppf_err = Format.err_formatter
22    
23  let do_file s =  let do_file s =
24    let (src, chan) =    let (src, chan) =
25      if s = "" then (`Stream, stdin) else (`File s, open_in s) in      if s = "" then (`Stream, stdin) else (`File s, open_in s) in
26    Location.set_source src;    Location.set_source src;
27    let input = Stream.of_channel chan in    let input = Stream.of_channel chan in
28    let ok = Cduce.run ppf input in    let ok = Cduce.run ppf ppf_err input in
29    if s <> "" then close_in chan;    if s <> "" then close_in chan;
30    if not ok then exit 1    if not ok then exit 1
31    

Legend:
Removed from v.123  
changed lines
  Added in v.124

CVS Admin">CVS Admin
ViewVC Help
Powered by ViewVC 1.1.5