C++ (C++17 dialekt) päisepõhiste käsurea argumentide parsimise teegi versioon 3.0 on avaldatud. argparse, levitatakse MIT litsentsi alusel.
Mis on uut:
- Lisatud tugi üksteist välistavatele argumentidele:
auto &grupp = program.add_mutually_exclusive_group(); grupp.add_argument("—esimene"); grupp.add_argument("—teine");
- C++20 moodul lisatud;
- Lisatud tugi mitme väärtuse hulgast valimiseks:
program.add_argument("sisend") .default_value(std::string{"baz"}) .choices("foo", "bar", "baz"); program.add_argument("loendus") .default_value(0) .choices(0, 1, 2, 3, 4, 5);
- Lisatud binaarsüsteemi tähistuse tugi, näiteks 0b101:
argparse::ArgumentParser programm("test"); program.add_argument("-n").scan<'b', uint8_t>();
- Lisatud is_subcommand_used ülekoormatud versioon, mis aktsepteerib alamkäskude parserit;
- Parameeter exit_on_default_arguments on lisatud ArgumentParserile;
- Lisatud tugi alamkäskude peitmiseks käsu --help väljundist:
argparse::ArgumentParser program("test"); argparse::ArgumentParser hidden_cmd("peidetud"); hidden_cmd.add_argument("failid").remaining(); hidden_cmd.set_suppress(true); program.add_subparser(hidden_cmd);
- Lisatud võimalus kontrollida parsitud väärtuste olemasolu ArgumentParseris;
- Lisatud veergude joondus argumentide mitmerealise abi jaoks;
- Paljud vead on parandatud.
Allikas: linux.org.ru
