package mirage
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=795cc176ffbc67363d4c4ef69354aced9681c0b1e24bf93f0a270975ee0b608b
sha512=96a2fb3971613b146371a02af1ce59c73ca86dd1f42c0c47334bfbabe7d5f4cffb080c2c585e2e21fe3d33133bbe86b703cb9d276dd86ce3a90a544f03293af5
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.