argparse 3.0

argparse 3.0

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

60GB SSD 8Gb DDR4