argparse 3.0

argparse 3.0

Пусната е версия 3.0 на библиотеката за разбор на аргументи от командния ред, работеща само с заглавни файлове на C++ (диалект C++17). argparse, разпространява се под лиценза на MIT.

Какво ново:

  • Добавена е поддръжка за взаимно изключващи се аргументи:

auto &group = program.add_mutually_exclusive_group(); group.add_argument("—първи"); group.add_argument("—втори");

  • Добавен е C++20 модул;
  • Добавена е поддръжка за избор от множество стойности:

program.add_argument("вход") .default_value(std::string{"baz"}) .choices("foo", "bar", "baz"); program.add_argument("брой") .default_value(0) .choices(0, 1, 2, 3, 4, 5);

  • Добавена е поддръжка за двоична нотация, например 0b101:

argparse::ArgumentParser програма("тест"); program.add_argument("-n").scan<'b', uint8_t>();

  • Добавена е претоварена версия на is_subcommand_used, която приема парсер на подкоманди;
  • Параметърът exit_on_default_arguments е добавен към ArgumentParser;
  • Добавена е поддръжка за скриване на подкоманди от изхода на командата --help:

argparse::ArgumentParser програма("тест"); argparse::ArgumentParser hidden_cmd("скрит"); hidden_cmd.add_argument("файлове").remaining(); hidden_cmd.set_suppress(true); program.add_subparser(скрит_cmd);

  • Добавена е възможността за проверка за наличие на анализирани стойности в ArgumentParser;
  • Добавено е подравняване на колоните за многоредова помощ за аргументи;
  • Поправени са много грешки.

Източник: linux.org.ru

Добавяне на нов коментар