package minicli
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=f9e1416f332c353b2141fdbe51fd740d19c1db442498ce0bdb7ed8711afa88b6
md5=8662e6275eec2356872e4817b328e664
Description
minicli provides the CLI module. It allows programmers to quickly and correctly handle options passed via the command line to their program. minicli is intended at people who develop software fast, but who don't want to break things. minicli can throw a variety of informative exceptions to the end user, when the command line interface is not being used properly. So that, the end user has a good chance to correct himself before calling the software support team. Another design goal of minicli is to make command-line scientific programs harder to use incorrectly.
Published: 20 Jun 2019
README
Minicli
Minimalist OCaml library for command line parsing. Look into the test.ml file for usage examples/quickstart.
Example session with the test program
# _build/default/test.exe
usage:
_build/default/test.exe {-i|--input} <file> {-o|--output} <file> -n <int> -x <float> [-v] [--hi <string>]
# _build/default/test.exe -i
Fatal error: exception Minicli__CLI.No_param_for_option("-i")
# _build/default/test.exe -i input.txt
Fatal error: exception Minicli__CLI.Option_is_mandatory("-o")
# _build/default/test.exe -i input.txt -o output.txt
Fatal error: exception Minicli__CLI.Option_is_mandatory("-n")
# _build/default/test.exe -i input.txt -o output.txt -n /dev/null
Fatal error: exception Minicli__CLI.Not_an_int("/dev/null")
# _build/default/test.exe -i input.txt -o output.txt -n 123
Fatal error: exception Minicli__CLI.Option_is_mandatory("-x")
# _build/default/test.exe -i input.txt -o output.txt -n 123 -x /dev/null
Fatal error: exception Minicli__CLI.Not_a_float("/dev/null")
# _build/default/test.exe -i input.txt -o output.txt -n 123 -x 0.123
i: input.txt o: output.txt n: 123 x: 0.123000 v: false
# _build/default/test.exe -i input.txt -o output.txt -n 123 -x 0.123 -v
i: input.txt o: output.txt n: 123 x: 0.123000 v: true
# _build/default/test.exe -i input.txt -o output.txt -n 123 -x 0.123 -v -i input.bin
Fatal error: exception Minicli__CLI.More_than_once("-i, --input")
# _build/default/test.exe --toto titi -i input.txt -o output.txt -n 123 -x 0.123 -v -y 42
Fatal error: exception Minicli__CLI.Unused_options("--toto,-y")
Bibliography
Stephenson, N. (1999). In the beginning... was the command line. New York: Avon books.
Dev Dependencies
None
Used by (18)
- acp4
-
bst
>= "6.0.0"
-
dokeysto_lz4
>= "3.0.1"
- fasmifra
-
hts_shrink
>= "2.0.0"
-
lbvs_consent
= "1.1.3" | >= "2.0.1"
- linwrap
- molenc
- odnnr
- omlr
- oplsr
-
oranger
< "3.0.1"
- orf
-
orrandomForest
>= "3.0.0"
- orsvm_e1071
- pardi
- rankers
- svmwrap
Conflicts
None