1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
let bin = ref false in
let dec = ref false in
let _ =
Arg.parse ["-bin",Arg.Set bin, "sets mode to binary";
"-dec", Arg.set dec,"sets mode to decimal"]
(fun _ -> () )
"use either -bin, either -dec (mandatory and exclusive)"
;
(* Ici la parse a été fait, les instructions suivantes peuvent donc accéder aux valeurs de !bin et !dec, vérifions que les options sont bien spécifiées et exlusives*)
match (!bin,!dec) with
| true,true -> failwith("-bin and -dec are exlusive")
| false,false -> failwith("you must specify either -bin, either -dec")
| true, false -> traitement_bin ()
| false, true -> traitement_dec () |