X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=options.ml;fp=options.ml;h=ffa5fa7777d7dbc98899a9ad4c553dd7c3f7b3f6;hb=9abf8a6f78264fbf4eec1676b4a26018967c97e6;hp=6d6dc86c776074ac268bf08566ea9fa1ed75176a;hpb=1c5c95673d1d3595f948e5dc674861a1f86b6158;p=SXSI%2Fxpathcomp.git diff --git a/options.ml b/options.ml index 6d6dc86..ffa5fa7 100644 --- a/options.ml +++ b/options.ml @@ -5,11 +5,13 @@ let disable_text_collection = ref false let query = ref "" let input_file = ref "" let output_file = ref None - +let save_file = ref "" let usage_msg = Printf.sprintf "%s 'query' [output]" Sys.argv.(0) -let anon_fun = let pos = ref 0 in + +let pos = ref 0 +let anon_fun = fun s -> match !pos with | 0 -> input_file:= s;incr pos | 1 -> query := s; incr pos @@ -18,8 +20,16 @@ let anon_fun = let pos = ref 0 in let spec = [ "-f", Arg.Set_int(sample_factor),"sample factor [default=64]"; "-i", Arg.Set(index_empty_texts),"index empty texts [default=false]"; - "-d", Arg.Set(disable_text_collection),"Disable text collection[default=false]"; ] + "-d", Arg.Set(disable_text_collection),"Disable text collection[default=false]"; + "-s", Arg.Set_string(save_file),"Save the intermediate representation into file.srx"; + ] + +let parse_cmdline() = + let _ = Arg.parse spec anon_fun usage_msg + in + if (!pos > 3 || !pos < 2) + then begin Arg.usage spec usage_msg; exit 1 end -let parse_cmdline() = Arg.parse spec anon_fun usage_msg +