Version 3.0 av C++ (dialekt C++17) header-only bibliotek för parsning av kommandoradsargument har slÀppts argparse, publicerad under MIT-licensen.
Nyheter:
- stöd för ömsesidigt uteslutande argument har lagts till:
auto &group = program.add_mutually_exclusive_group(); group.add_argument("âfirst"); group.add_argument("âsecond");
- modul C++20 har lagts till;
- stöd för val mellan flera vÀrden har lagts till:
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);
- stöd för binÀr notation, till exempel 0b101, har lagts till:
argparse::ArgumentParser program("test"); program.add_argument("-n").scan<âbâ, uint8_t>();
- en överlagrad version av is_subcommand_used, som tar en subkommandoparsare, har lagts till;
- en parameter exit_on_default_arguments har lagts till i ArgumentParser;
- stöd för att dölja subkommandon frĂ„n hjĂ€lpkommandots utdata âhelp har lagts till:
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öjlighet att kontrollera nÀrvaron av tolkade vÀrden i ArgumentParser har lagts till;
- kolumnjustering för fleradig hjÀlptext för argument har lagts till;
- mÄnga buggar har ÄtgÀrdats.
KĂ€lla: linux.org.ru
