Name Last Update
src Loading commit data...
.gitignore Loading commit data...
CMakeLists.txt Loading commit data...
INSTALL Loading commit data...
LICENSE Loading commit data...
README Loading commit data...

README

== Quick start ==

This is a lightweight C++ option parser library, supporting the standard GNU
style syntax for options.

Options can be given as:

--long
--long=argument
--long argument
-a
-ab
-abc argument

where c takes an argument, but a and b do not.

How to use:

#include

Create a cxxopts::Options instance.

cxxopts::Options options;

Then use add_options.

options.add_options()
("d,debug", "Enable debugging")
("f,file", "File name", cxxopts::value())

Options can be declared with a short and/or long option. A description must be
provided. The third argument is the value, if omitted it is boolean. Any type
can be given as long as it can be parsed, with operator>>.

To parse the command line do:

options.parse(argc, argv);

To retrieve an option use options.count("option") to get the number of times
it appeared, and

options["opt"].as()

to get its value. If "opt" doesn't exist, or isn't of the right type, then an
exception will be thrown.

== Linking ==

Compile with -lcxxopts.

== Requirements ==

The only build requirement is a C++ compiler that supports C++11 regular
expressions. For example GCC >= 4.9 or clang with libc++.

== TODO list ==

* Allow unrecognised options.
* Option groups.