Die Version 3.0 der C++ (Dialekt C++17) Header-only-Bibliothek fĂŒr die Verarbeitung von Befehlszeilenargumenten wurde veröffentlicht argparse, lizenziert unter der MIT Lizenz.
Neuigkeiten:
- UnterstĂŒtzung fĂŒr mutually exclusive arguments hinzugefĂŒgt:
auto &group = program.add_mutually_exclusive_group(); group.add_argument("âfirst"); group.add_argument("âsecond");
- C++20 Modul hinzugefĂŒgt;
- UnterstĂŒtzung fĂŒr die Auswahl aus mehreren Werten hinzugefĂŒgt:
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);
- UnterstĂŒtzung fĂŒr die binĂ€re Notation hinzugefĂŒgt, zum Beispiel 0b101:
argparse::ArgumentParser program("test"); program.add_argument("-n").scan();
- Ăberladene Variante von is_subcommand_used hinzugefĂŒgt, die einen Unterbefehl-Parser akzeptiert;
- Parameter exit_on_default_arguments zum ArgumentParser hinzugefĂŒgt;
- UnterstĂŒtzung fĂŒr das Ausblenden von Unterbefehlen aus der Ausgabe von âhelp hinzugefĂŒgt:
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);
- Möglichkeit zur ĂberprĂŒfung der VerfĂŒgbarkeit von analysierten Werten im ArgumentParser hinzugefĂŒgt;
- Spaltenausrichtung fĂŒr mehrzeilige Hilfe fĂŒr Argumente hinzugefĂŒgt;
- viele Fehler wurden behoben.
Quelle: linux.org.ru
