Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2021-10-05 | Remove leftover `date` invocation in ad hoc recipe | Boris Kolpackov | 1 | -2/+0 | |
2021-09-28 | Move runtime tests from cli-tests/ to cli/tests/ | Boris Kolpackov | 11 | -6/+37 | |
2021-09-20 | Use ad hoc recipe for parsing code and documentation generating | Karen Arutyunov | 23 | -237/+1389 | |
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 | 6 | -67/+254 | |
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 | 7 | -42/+271 | |
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-07-22 | Change manifest builds value from all to host | Boris Kolpackov | 1 | -1/+1 | |
2021-02-24 | Update copyright | Karen Arutyunov | 1 | -1/+1 | |
2021-02-24 | Various cleanups | Karen Arutyunov | 9 | -14/+11 | |
2021-02-24 | Adapt to cutl/ to libcutl/ rename | Karen Arutyunov | 13 | -20/+20 | |
2020-12-08 | Regenerate options parsing code | Karen Arutyunov | 2 | -139/+155 | |
2020-12-08 | Complete options file path using referencing file path as base | Karen Arutyunov | 2 | -18/+85 | |
2020-10-05 | Add missing spaces in generated code | Karen Arutyunov | 1 | -2/+2 | |
2020-09-12 | Fix generated set and map parsers so that comparison predicate can also be ↵ | Karen Arutyunov | 1 | -13/+13 | |
specified | |||||
2020-08-01 | Use legal{} target type for legal documentation (LICENSE, AUTHORS, etc) | Karen Arutyunov | 3 | -3/+3 | |
2020-08-01 | Disable success build emails | Karen Arutyunov | 3 | -3/+1 | |
2020-07-21 | Bump build2 version requirement to 0.13.0 | Boris Kolpackov | 3 | -6/+6 | |
2020-07-21 | Change version to 1.2.0-b.7.z | Boris Kolpackov | 3 | -3/+3 | |
2020-07-18 | Release version 1.2.0-b.7v1.2.0-b.7 | Boris Kolpackov | 3 | -3/+3 | |
2020-07-10 | Add glue buildfile | Boris Kolpackov | 1 | -0/+7 | |
2020-06-19 | Fix misleading indentation | Boris Kolpackov | 1 | -2/+2 | |
2020-06-09 | Add name to metadata for cli executable | Boris Kolpackov | 2 | -0/+2 | |
2020-06-09 | Add metadata variable prefix for cli executable | Karen Arutyunov | 2 | -2/+2 | |
2020-05-28 | Get rid of trailing spaces in generated code | Boris Kolpackov | 3 | -90/+98 | |
2020-04-29 | Add --suppress-undocumented for usage and regenerate | Boris Kolpackov | 2 | -3/+1 | |
2020-04-27 | Update metadata protocol | Boris Kolpackov | 7 | -15/+49 | |
2020-04-27 | Separate tests and examples into individual packages | Karen Arutyunov | 185 | -1444/+458 | |
Also make cli module to be explicitly enabled via the config.cli configuration variable. | |||||
2020-04-21 | Add metadata | Boris Kolpackov | 8 | -6/+76 | |
2020-03-27 | Regenerate options parsing code | Boris Kolpackov | 2 | -6/+55 | |
2020-03-27 | Add peek_file() and peek_line() functions to argv_file_scanner | Karen Arutyunov | 3 | -8/+56 | |
2020-02-28 | Add .gitattributes file | Karen Arutyunov | 1 | -0/+19 | |
2020-02-18 | Reformat LICENSE | Boris Kolpackov | 1 | -16/+15 | |
2020-02-18 | Normalize LICENSE | Boris Kolpackov | 1 | -0/+2 | |
2020-02-13 | Use copyright extracted from LICENSE file for printing utility version | Karen Arutyunov | 2 | -1/+11 | |
2020-02-13 | Update copyright last year in doc/guide/{guide.html2ps,index.xhtml} | Karen Arutyunov | 2 | -3/+3 | |
2020-02-13 | Add doc/doc.sh | Karen Arutyunov | 7 | -6/+86 | |
2020-02-13 | Update last year in LICENSE file | Karen Arutyunov | 1 | -2/+1 | |
2020-02-13 | Drop copyright notice from source code | Karen Arutyunov | 122 | -122/+0 | |
2019-11-21 | Change version to 1.2.0-b.6.z | Boris Kolpackov | 1 | -1/+1 | |
2019-11-19 | Release version 1.2.0-b.6v1.2.0-b.6 | Boris Kolpackov | 1 | -1/+1 | |
2019-10-08 | Adapt for building with Clang on Windows | Karen Arutyunov | 3 | -6/+12 | |
2019-10-01 | Use cxx.std=latest | Karen Arutyunov | 3 | -3/+3 | |
2019-08-14 | Fix merge() function generated for map parser | Karen Arutyunov | 1 | -1/+4 | |
2019-07-27 | Add support for direct file loading with argv_file_scanner | Boris Kolpackov | 8 | -40/+170 | |
2019-07-27 | Add support for option merging (--generate-merge) | Boris Kolpackov | 17 | -208/+610 | |
2019-07-04 | Bump build2 requirement to 0.12.0- | Boris Kolpackov | 1 | -2/+2 | |
2019-07-04 | Adjust for new libu*{} semantics (libu{} is gone) | Boris Kolpackov | 1 | -1/+1 | |
2019-06-19 | Replace tags with topics, bump required build2 version | Boris Kolpackov | 1 | -4/+5 | |
2019-06-11 | Change version to 1.2.0-b.5.z | Boris Kolpackov | 1 | -1/+1 | |
2019-06-07 | Release version 1.2.0-b.5v1.2.0-b.5 | Boris Kolpackov | 1 | -1/+1 | |