Module Cmdliner_info.Arg
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))typeabsence`` =
|Err(* an error is reported.
*)
|Valof``stringStdlib.Lazy.t(* if <> "", takes the given default value.
*)
|Docofstring(* if <> "", a doc string interpreted in the doc markup language.
*)
The type for what happens if the argument is absent from the cli.
typeopt_kind`` =
|Flag(* without value, just a flag.
*)
|Opt(* with required value.
*)
|Opt_voptofstring(* with optional value, takes given default.
*)
The type for optional argument kinds.
typepos_kind
valpos : ``rev:bool->``start:int->``len:``int option``->pos_kind
valpos_rev :pos_kind->bool
valpos_start :pos_kind->int
valpos_len :pos_kind->``int option
typet
valid :t->int
valdeprecated :t->``string option
valdoc :t->string
valdocv :t->string
valdocs :t->string
valopt_names :t->``string list
valopt_name_sample :t->string
valis_opt :t->bool
valis_pos :t->bool
valis_req :t->bool
