Module Kwdeprecated.Kwarg

module Kwarg: sig .. end


Command Line Argument Processing


val unmash : ?unmash_gnu:bool -> string list -> string list
unmash cmd line switches eg -abc becomes -a -b -c
Returns list of unmashed switches eg ["-z";"foo";"-a";"-b";"-c";"-x";"bar";"baz"]
unmash_gnu : unmash GNU --style args too (default: false)
val ungnu : string list -> string list
ungnu cmd line switches eg ["--abc=12"] becomes ["--abc"; "12"]
Returns list of ungnu'd switches eg ["-z"; "--abc"; "69"; "--123"; "-x"]
switches : list of switches eg ["-z"; "--abc=69"; "--123"; "-x"]
val foldargv : ?nullstdin:bool ->
?stdin:string ->
?argv:string array -> ?with0:bool -> ('a -> string -> 'a) -> 'a -> 'a
fold over Sys.argv, taking the conventional meaning of Sys.argv.(0) into account (i.e., skip it by default).
Returns the accumulator
nullstdin : if true, then an empty argv is considered to represent stdin, and the value of stdin is inserted into the empty array (default: false)
stdin : string value used to represent stdin (default: "-")
argv : the array of filename arguments to process (default: Sys.argv)
f : function 'a -> string -> 'a to apply
acc : initial accumulator
val argvlist : unit -> string list
Return Sys.argv as a list, less Sys.argv.(0)

Getopt

A purely-applicative getopt that differs from (some) others (e.g. Arg) in that:
exception Syntax of string
exception Unset of string
exception Undefined of string
exception NYI
val syntax : ('a, unit, string, 'b) Pervasives.format4 -> 'a
module Valid: sig .. end
val one : ('a -> 'b) -> 'a list -> 'b
val all : ('a -> bool) -> 'a list -> bool
val no : ('a -> bool) -> 'a list -> bool
type rep = 
| Set
| One of string option
| Any of string list
| N of (int * string list)
type spec = {
   name : string;
   short : string;
   long : string;
   rep : rep;
   valid : string list -> bool;
   meta : string;
   text : string;
}
val spec : spec
val shortopts : spec list -> string
val opt_get : (string, 'a) Hashtbl.t -> string -> 'a
val opt_get1 : (string, 'a list) Hashtbl.t -> string -> 'a
val opt_set : (string, 'a list) Hashtbl.t -> string -> bool
val help : spec list -> string list
val getopt : ?size:int ->
spec list ->
string list -> (string, string list) Hashtbl.t * string list