sig
type cli_parsing_t = (Arg.key * Arg.spec * Arg.doc) list * Arg.anon_fun
type 'a cli_parsing_post_t = unit -> 'a
type 'a main_t = ctxt:OASISContext.t -> 'a
type 'a run_t =
unit -> CLISubCommand.cli_parsing_t * 'a CLISubCommand.main_t
type t = {
scmd_name : OASISTypes.name;
scmd_synopsis : string;
scmd_help : string;
scmd_usage : string;
scmd_deprecated : bool;
scmd_run : unit CLISubCommand.run_t;
}
val default_anon : Arg.anon_fun
val default_fspecs :
unit ->
CLISubCommand.cli_parsing_t * unit CLISubCommand.cli_parsing_post_t
val make_run :
(unit ->
CLISubCommand.cli_parsing_t * 'a CLISubCommand.cli_parsing_post_t) ->
('a -> 'b) CLISubCommand.main_t -> 'b CLISubCommand.run_t
val register :
?usage:string ->
?deprecated:bool ->
OASISTypes.name ->
synopsis:string -> help:string -> unit CLISubCommand.run_t -> unit
val find : OASISTypes.name -> CLISubCommand.t
val list_plugin : ?deprecated:bool -> unit -> PluginLoader.entry list
val list_builtin : ?deprecated:bool -> unit -> CLISubCommand.t list
end