Module Cmdliner_eval
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))Evaluating commands
type``'a eval_ok`` = ``[
| ```Ok ``of'a
| ```Version ``
| ```Help ``]
typeeval_error`` = ``[
| ```Parse ``
| ```Term ``
| ```Exn ``]
valeval_value : ``?help:Stdlib.Format.formatter->``?err:Stdlib.Format.formatter->``?catch:bool->``?env:``(``string->``string option``)``->``?argv:``string array``->'aCmdliner_cmd.t->``('aeval_ok,eval_error)``result
valeval_peek_opts : ``?version_opt:bool->``?env:``(``string->``string option``)``->``?argv:``string array``->'aCmdliner_term.t->'aoption`` * ``('aeval_ok,eval_error)``result
valeval : ``?help:Stdlib.Format.formatter->``?err:Stdlib.Format.formatter->``?catch:bool->``?env:``(``string->``string option``)``->``?argv:``string array``->``?term_err:int->``unitCmdliner_cmd.t->Cmdliner_info.Exit.code
valeval' : ``?help:Stdlib.Format.formatter->``?err:Stdlib.Format.formatter->``?catch:bool->``?env:``(``string->``string option``)``->``?argv:``string array``->``?term_err:int->``intCmdliner_cmd.t->Cmdliner_info.Exit.code
valeval_result : ``?help:Stdlib.Format.formatter->``?err:Stdlib.Format.formatter->``?catch:bool->``?env:``(``string->``string option``)``->``?argv:``string array``->``?term_err:Cmdliner_info.Exit.code->``(unit, string)``resultCmdliner_cmd.t->Cmdliner_info.Exit.code
valeval_result' : ``?help:Stdlib.Format.formatter->``?err:Stdlib.Format.formatter->``?catch:bool->``?env:``(``string->``string option``)``->``?argv:``string array``->``?term_err:Cmdliner_info.Exit.code->``(Cmdliner_info.Exit.code, string)``resultCmdliner_cmd.t->Cmdliner_info.Exit.code
