Lyra
Lyra copied to clipboard
A simple to use, composable, command line parser for C++ 11 and beyond
Currently argument type parsing conversions use iostreams as the base mechanism. It would be beneficial to allow customization of that conversion to extend or replace it.
There are several popular C++ command-line parsers other than Lyra - some probably even more popular if we count GitHub stars: cxxopt, CLI11, the venerable Boost program_options and possibly others....
The template parameter must be be used in the function signature in order to be deducable.
``` #include #include #include int main(int argc, char *argv[]) { using std::cout; using std::cerr; using std::endl; bool show_help{}; bool flag_this{}; bool flag_that{}; bool flag_extra{}; lyra::cli cli; cli.add_argument(lyra::help(show_help)("Show help")); cli.add_argument( lyra::group()...
I'm encountering unexpected results with `lyra 1.6.1` and the following program: ``` #include #include int main(int argc, char* argv[]) { std::string first_arg; std::string second_arg; auto cli = lyra::cli() | lyra::arg(first_arg,...
For GCC and Clang, enable: - pedantic warnings for parity with meson - -Wnon-virtual-dtor - -Wzero-as-null-pointer-constant
My recent PR checks fail due to some issues with the MinGW build script. Example: ``` 2023-12-20T15:35:42.7370655Z ##[section]Starting: Extract MinGW 2023-12-20T15:35:42.7536683Z ============================================================================== 2023-12-20T15:35:42.7536818Z Task : Extract files 2023-12-20T15:35:42.7536873Z Description :...
- .cache is created by the clangd language server - build is a conventional build directory often used with CMake
Compatibility with CMake versions older than 3.5 is deprecated. Fixes #82.
As in the title.