sig
type 'a cli_option = {
switches : string list;
doc : string;
default : 'a;
}
type _ option_spec =
Opt_flag :
bool EDSL.t EDSL.Command_line.cli_option -> bool EDSL.t
EDSL.Command_line.option_spec
| Opt_string :
string EDSL.t EDSL.Command_line.cli_option -> string EDSL.t
EDSL.Command_line.option_spec
and (_, _) cli_options =
Opt_end : string -> ('a, 'a) EDSL.Command_line.cli_options
| Opt_cons : 'c EDSL.Command_line.option_spec *
('a, 'b) EDSL.Command_line.cli_options -> ('c -> 'a, 'b)
EDSL.Command_line.cli_options
module Arg :
sig
val string :
?default:string EDSL.t ->
doc:string ->
string list -> string EDSL.t EDSL.Command_line.option_spec
val flag :
?default:bool EDSL.t ->
doc:string ->
string list -> bool EDSL.t EDSL.Command_line.option_spec
val ( & ) :
'a EDSL.Command_line.option_spec ->
('b, 'c) EDSL.Command_line.cli_options ->
('a -> 'b, 'c) EDSL.Command_line.cli_options
val usage : string -> ('a, 'a) EDSL.Command_line.cli_options
end
val parse :
('a, unit EDSL.t) EDSL.Command_line.cli_options ->
(anon:string list EDSL.t -> 'a) -> unit EDSL.t
end