package mirage
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=1155b5e9a585d3b44dfdd72777d94a7222b0f88a1737593bfb1f09954b6fb914
sha512=c59a0051f1037d7dd5bb81dfc8a265117b533383d0b285e0c2101b44d2ca8bcab40c432ce696a5b44397216e78ac59863f1ab6c5fb33bb338ca18d7ef359500f
doc/mirage.functoria/Functoria/Cli/index.html
Module Functoria.Cli
Source
Command-line handling.
type 'a args = {
context : 'a;
config_file : Fpath.t;
context_file : Fpath.t option;
output : string option;
dry_run : bool;
}
The type for global arguments.
peek_args ?with_setup argv
parses the global command-line arguments. If with_setup
is set (by default it is), interprets -v
and --color
to set-up the terminal configuration as a side-effect. Returns None if global command-line arguments are invalid.
peek_full_eval argv
reads the --output
option from argv
; the return value is None
if option is absent in argv
.
Sub-commands
The type for arguments of the configure
sub-command.
type query_kind = [
| `Name
| `Packages
| `Opam
| `Files
| `Dune of [ `Config | `Build | `Project | `Workspace | `Dist ]
| `Makefile
]
pp_query_kind
is the pretty-printer for query kinds.
type 'a query_args = {
args : 'a args;
kind : query_kind;
depext : bool;
extra_repo : (string * string) list;
}
The type for arguments of the query
sub-command.
The type for arguments of the describe
sub-command.
peek_full_eval argv
reads the --eval
option from argv
; the return value is None
if option is absent in argv
.
type 'a action =
| Configure of 'a configure_args
| Query of 'a query_args
| Describe of 'a describe_args
| Clean of 'a clean_args
| Help of 'a help_args
A value of type action
is the result of parsing command-line arguments using parse_args
.
Evalutation
val eval :
?with_setup:bool ->
?help_ppf:Format.formatter ->
?err_ppf:Format.formatter ->
name:string ->
version:string ->
configure:'a Cmdliner.Term.t ->
query:'a Cmdliner.Term.t ->
describe:'a Cmdliner.Term.t ->
clean:'a Cmdliner.Term.t ->
help:'a Cmdliner.Term.t ->
mname:string ->
string array ->
'a action Cmdliner.Term.result
Parse the functoria command line. The arguments to ~configure
, ~describe
, etc., describe extra command-line arguments that should be accepted by the corresponding subcommands.
There are no side effects, save for the printing of usage messages and other help when either the 'help' subcommand or no subcommand is specified.
Similar to Cmdliner.Term.result
but help is folded into `Ok
and errors also carry global command-line parameters.