Lëshimi i versionit 3.0 të C++ (dialekti C++17) bibliotekës header-only për analizimin e argumenteve të komandave argparse, i shpërndarë nën licencën MIT.
ĂfarĂ« Ă«shtĂ« e re:
- shtuar mbështetje për argumente të përjashtuara reciprokisht:
auto &group = program.add_mutually_exclusive_group(); group.add_argument("âfirst"); group.add_argument("âsecond");
- shtuar moduli C++20;
- shtuar mbështetje për zgjedhjen nga disa vlera:
program.add_argument("input") .default_value(std::string{"baz"}) .choices("foo", "bar", "baz"); program.add_argument("count") .default_value(0) .choices(0, 1, 2, 3, 4, 5);
- shtuar mbështetje për shenjat binare, për shembull, 0b101:
argparse::ArgumentParser program("test"); program.add_argument("-n").scan();
- shtuar variantin e overloading is_subcommand_used, që merr parser për nënkomanda;
- në ArgumentParser është shtuar parametri exit_on_default_arguments;
- shtuar mbĂ«shtetje pĂ«r fshirjen e nĂ«nkomandave nga rezultati i komandĂ«s âhelp:
argparse::ArgumentParser program("test"); argparse::ArgumentParser hidden_cmd("hidden"); hidden_cmd.add_argument("files").remaining(); hidden_cmd.set_suppress(true); program.add_subparser(hidden_cmd);
- shtuar mundësinë për të verifikuar disponimin e vlerave të analizuar në ArgumentParser;
- shtuar alignimin në kolonë për ndihmën shumë-rreshtore për argumentet;
- janë rregulluar shumë gabime.
Burimi: linux.org.ru
