From: Kim Nguyễn Date: Fri, 26 Oct 2012 12:41:52 +0000 (+0200) Subject: Merge branch 'handle-stdout' X-Git-Url: http://git.nguyen.vg/gitweb/?a=commitdiff_plain;h=refs%2Fheads%2Fmaster;hp=e656ceccd33ad11e80cc327f6393bfdad59c1cdb;p=SXSI%2Fxpathcomp.git Merge branch 'handle-stdout' Allows to pass - as stdout. --- diff --git a/src/options.ml b/src/options.ml index 7307794..fbbd73e 100644 --- a/src/options.ml +++ b/src/options.ml @@ -77,7 +77,6 @@ let spec = Arg.align "-doc-stats", Arg.Set(docstats), " Compute document statistics (performs full traversal)"; - "-v", Arg.Set(verbose), " verbose mode"; ] @ IFNDEF NTRACE THEN [ @@ -88,12 +87,22 @@ THEN [ ELSE [] END +let real_spec = + spec @ [ + "-", Arg.Unit (fun () -> anon_fun "-"), ""; + ] + let parse_cmdline() = - let _ = Arg.parse spec anon_fun usage_msg + let _ = + try + Arg.parse_argv Sys.argv real_spec anon_fun usage_msg; + if (!pos > 3 || !pos < 2) then raise (Arg.Bad "Invalid number of arguments") + with + Arg.Bad s | Arg.Help s -> + eprintf "%s\n" (Arg.usage_string spec usage_msg); + exit 1 in - if (!pos > 3 || !pos < 2) - then begin Arg.usage spec usage_msg; exit 1 end; Logger.set_verbose !verbose