OSDN Git Service

Implement --use-network option parser
authormzp <mzpppp@gmail.com>
Sun, 20 Dec 2009 02:43:03 +0000 (11:43 +0900)
committermzp <mzpppp@gmail.com>
Sun, 20 Dec 2009 06:28:55 +0000 (15:28 +0900)
link/cmdOpt.ml
link/cmdOpt.mli

index 2b5b957..31f2350 100644 (file)
@@ -6,6 +6,7 @@ class type t = object
   method size:int*int
   method main_class:string
   method output:string
+  method use_network:bool
 end
 
 let opt_parser =
@@ -30,6 +31,17 @@ let int_option ~default ~metavar ?short_name ?long_name ~help () =
       ?short_name ?long_name ~help store in
     store
 
+let bool_option ~default ?short_name ?long_name ~help () =
+  let store =
+    if default then
+      StdOpt.store_false ()
+    else
+      StdOpt.store_true () in
+  let _ =
+    OptParser.add opt_parser
+      ?short_name ?long_name ~help store in
+    store
+
 let width =
   int_option
     ~default:(20 * 800)
@@ -83,14 +95,21 @@ let blue =
     ~long_name:"blue"
     ~help:"stage background color(blue)" ()
 
+let use_network =
+  bool_option
+    ~default:false
+    ~long_name:"use-network"
+    ~help:"Set use_network option" ()
+
 let parse argv =
   let inputs =
     OptParser.parse ~first:1 opt_parser argv in
     inputs,{|
-      color      = (Opt.get red, Opt.get green, Opt.get blue);
-      main_class = Opt.get main_class;
-      size       = (Opt.get width, Opt.get height);
-      output     = Opt.get output
+      color       = (Opt.get red, Opt.get green, Opt.get blue);
+      main_class  = Opt.get main_class;
+      size        = (Opt.get width, Opt.get height);
+      output      = Opt.get output;
+      use_network = Opt.get use_network
     |}
 
 let parse_argv () =
index fb9e444..e8bd895 100644 (file)
@@ -3,6 +3,7 @@ class type t = object
   method size:int*int
   method main_class:string
   method output:string
+  method use_network:bool
 end
 
 val parse : string array -> string list * t