3.0 C++ (C++17-murre) otsikkokirjaston julkaisu komentoriviargumenttien jäsentämiseen argparse, jaettu MIT-lisenssillä.
Mikä on uutta:
- lisätty tuki toisensa poissulkeville argumenteille:
auto &group = program.add_mutually_exclusive_group(); group.add_argument("—ensimmäinen"); group.add_argument("—sekunti");
- lisätty C++20-moduuli;
- lisätty tuki useista arvoista valinnalle:
program.add_argument("syöttö") .default_value(std::string{"baz"}) .choices("foo", "bar", "baz"); program.add_argument("count") .default_value(0) .choices(0, 1, 2, 3, 4, 5);
- lisätty tuki binäärimerkinnälle, esimerkiksi 0b101:
argparse::ArgumentParser program("testi"); program.add_argument("-n").scan<'b', uint8_t>();
- lisätty ylikuormitettu versio komennosta is_subcommand_used, joka hyväksyy alikomennon jäsentimen;
- lisätty parametri exit_on_default_arguments ArgumentParseriin;
- lisätty tuki alikomentojen piilottamiseen --help-komennon lähdöstä:
argparse::ArgumentParser program("testi"); argparse::ArgumentParser hidden_cmd("piilotettu"); piilotettu_cmd.add_argument("tiedostot").remaining(); piilotettu_cmd.set_suppress(true); program.add_subparser(hidden_cmd);
- lisätty mahdollisuus tarkistaa jäsennetyt arvot ArgumentParserissa;
- lisätty tasaus argumenttien moniriviseen ohjesarakkeeseen;
- Monet bugit on korjattu.
Lähde: linux.org.ru