Izšla je različica 3.0 C++ (dialekt C++17) header-only knjižnice za razčlenjevanje argumentov ukazne vrstice argparse, distribuirana pod MIT licenco.
Što je novo:
- dodana podpora za izključujoče argumente:
auto &group = program.add_mutually_exclusive_group(); group.add_argument("—first"); group.add_argument("—second");
- dodan modul C++20;
- dodana podpora za izbiro iz več vrednosti:
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);
- dodana podpora za binarno zapis, na primer, 0b101:
argparse::ArgumentParser program("test"); program.add_argument("-n").scan();
- dodana preobremenjena različica is_subcommand_used, ki sprejema parser podkomand;
- v ArgumentParser dodana parameter exit_on_default_arguments;
- dodana podpora za skrivanje podkomand iz izpisa ukaza —help:
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);
- dodana možnost preverjanja prisotnosti razčlenjenih vrednosti v ArgumentParser;
- dodano poravnanje v stolpcih za večvrstno pomoč pri argumentih;
- odpravljene številne napake.
Izvor: linux.org.ru
