Module Cmdliner_term
Contents
Instructions: Use this module in your project
In the IDE (CLion, Visual Studio Code, Xcode, etc.) you use for your DkSDK project:
Add the following to your project's
dependencies/CMakeLists.txt:DkSDKProject_DeclareAvailable(cmdliner CONSTRAINT "= 1.1.1+dune" FINDLIBS cmdliner) DkSDKProject_MakeAvailable(cmdliner)Add the
Findlib::cmdlinerlibrary to any desired targets insrc/*/CMakeLists.txt:target_link_libraries(YourPackage_YourLibraryName # ... existing libraries, if any ... Findlib::cmdliner)Click your IDE's
Buildbutton
Not using DkSDK?
FIRST, do one or all of the following:
Run:
opam install cmdliner.1.1.1+duneEdit your
dune-projectand add:(package (name YourExistingPackage) (depends ; ... existing dependenices ... (cmdliner (>= 1.1.1+dune))))Then run:
dune build *.opam # if this fails, run: dune buildEdit your
<package>.opamfile and add:depends: [ # ... existing dependencies ... "cmdliner" {>= "1.1.1+dune"} ]Then run:
opam install . --deps-only
FINALLY, add the cmdliner library to any desired (library)and/or (executable) targets in your **/dune files:
(library
(name YourLibrary)
; ... existing library options ...
(libraries
; ... existing libraries ...
cmdliner))
(executable
(name YourExecutable)
; ... existing executable options ...
(libraries
; ... existing libraries ...
cmdliner))typeterm_escape`` = ``[
| ```Error ``ofbool * string
| ```Help`of`` `[`Cmdliner_manpage.format`](../Cmdliner_manpage/#type-format)` *string option`]
type``'a parser`` =Cmdliner_info.Eval.t->Cmdliner_cline.t->``('a, ``[ ```Parse of string ```| `[`term_escape`](#type-term_escape)` ])`` ``result`
Type type for command line parser. given static information about the command line and a command line to parse returns an OCaml value.
type``'a t`` =Cmdliner_info.Arg.Set.t*'aparser
The type for terms. The list of arguments it can parse and the parsing function that does so.
valconst :'a->'at
type``'a ret`` = ``[
| ```Ok ``of'a
|term_escape]
valterm_result : ``?usage:bool->``('a, ``[ ```Msg of string ``` ])[result](../../ocaml/Stdlib/#type-result)[t](#type-t)`->'a[t\](#type-t)
valcli_parse_result : ``('a, ``[ ```Msg of string ``` ])[result](../../ocaml/Stdlib/#type-result)[t](#type-t)`->'a[t\](#type-t)
valmain_name : ``stringt
valchoice_names : ``string list``t
