Lëshimi i versionit 3.0 të bibliotekës C++ (dialekti C++17) për analizimin e argumenteve të linjës së komandës, argparse, e shpërndarë nën licencën MIT.
Çfarë ka të re:
- Shtuar mbështetje për argumente ekskluzive:
auto &group = program.add_mutually_exclusive_group(); group.add_argument("—first"); group.add_argument("—second");
- Shtuar moduli C++20;
- Shtuar mbështetje për zgjedhje nga shumë 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 notimin binar, për shembull, 0b101:
argparse::ArgumentParser program("test"); program.add_argument("-n").scan<‘b’, uint8_t>();
- Shtuar versionin e tepruar is_subcommand_used, që merr parserin e nënkomandave;
- Shtuar parametri exit_on_default_arguments në ArgumentParser;
- Shtuar mbështetje për fshehjen e nënkomandave nga dalja e 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ësia për të verifikuar praninë e vlerave të analizuar në ArgumentParser;
- Shtuar përputhje për kolona të ndarë në dokumentacionin shumëstrësh për argumentet;
- u rregulluan shumë gabime.
Burimi: linux.org.ru
