Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2021-10-16 | Release version 1.2.0-b.8+1v1.2.0-b.8+1 | Boris Kolpackov | 1 | -1/+1 | |
Update pre-generated documentation. | |||||
2021-10-16 | Release version 1.2.0-b.8v1.2.0-b.8 | Boris Kolpackov | 1 | -1/+1 | |
2021-09-28 | Move runtime tests from cli-tests/ to cli/tests/ | Boris Kolpackov | 6 | -406/+0 | |
2021-09-20 | Use ad hoc recipe for parsing code and documentation generating | Karen Arutyunov | 1 | -2/+2 | |
The overall approach is to store pre-generated bootstrap options.?xx and cli.{1,xhtml} and automatically update them in the development build (config.cli.develop=true). See README.md in the root of the repository for details. | |||||
2021-09-10 | Add multi-argument grouping support in group_scanner | Boris Kolpackov | 2 | -9/+116 | |
2021-08-09 | Fix dependence on argument evaluation order in position test | Boris Kolpackov | 1 | -1/+7 | |
2021-08-03 | Add support for tracking argument/option position | Boris Kolpackov | 4 | -0/+96 | |
The scanner interface now provides the position() function that returns a monotonically-increasing number which, if stored, can later be used to determine the relative position of the arguments. There is also now a parser implementation for std::pair<T, std::size_t> which parses the value T into the first half of the pair and stores the option position in the second half. Together, this can be used to establish the relative position of different options, for example: class options { std::vector<std::pair<std::uint64_t, std::size>> --config-id; std::vector<std::pair<std::string, std::size>> --config-name; }; cli::argv_scanner scan (argc, argv); options ops (scan); // Iterate over --config-id and --config-name options in the order // specified by the user. // auto ii (ops.config_id ().begin ()); auto ni (ops.config_name ().begin ()); for (size_t i (0), n (scan.position ()); i != n; ++i) { if (ii != ops.config_id ().end () && ii->second == i) { // Handle *ii. ++ii; } if (ni != ops.config_name ().end () && ni->second == i) { // Handle *ni. ++ni; } } | |||||
2021-02-24 | Various cleanups | Karen Arutyunov | 3 | -2/+6 | |
2020-12-08 | Complete options file path using referencing file path as base | Karen Arutyunov | 1 | -16/+68 | |
2020-08-01 | Use legal{} target type for legal documentation (LICENSE, AUTHORS, etc) | Karen Arutyunov | 1 | -1/+1 | |
2020-08-01 | Disable success build emails | Karen Arutyunov | 1 | -1/+0 | |
2020-07-21 | Bump build2 version requirement to 0.13.0 | Boris Kolpackov | 1 | -2/+2 | |
2020-07-21 | Change version to 1.2.0-b.7.z | Boris Kolpackov | 1 | -1/+1 | |
2020-07-18 | Release version 1.2.0-b.7v1.2.0-b.7 | Boris Kolpackov | 1 | -1/+1 | |
2020-04-27 | Separate tests and examples into individual packages | Karen Arutyunov | 42 | -0/+1559 | |
Also make cli module to be explicitly enabled via the config.cli configuration variable. |