argparse 3.0

argparse 3.0

Foi lançado a versão 3.0 da biblioteca header-only de C++ (dialeto C++17) para análise de argumentos da linha de comando argparse, licenciada sob a licença MIT.

Novidades:

  • suporte adicionado para argumentos mutuamente exclusivos:

auto &group = program.add_mutually_exclusive_group(); group.add_argument("—first"); group.add_argument("—second");

  • módulo C++20 adicionado;
  • suporte adicionado para selecionar entre vários valores:

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);

  • suporte adicionado para notação binária, por exemplo, 0b101:

argparse::ArgumentParser program("test"); program.add_argument("-n").scan<‘b’, uint8_t>();

  • adicionado a versão sobrecarregada is_subcommand_used, que aceita um parser de subcomandos;
  • adicionado o parâmetro exit_on_default_arguments ao ArgumentParser;
  • suporte adicionado para ocultar subcomandos da saída do comando —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);

  • adicionada a opção de verificar a presença de valores analisados no ArgumentParser;
  • adicionado o alinhamento em colunas para a ajuda multilinear nos argumentos;
  • vários bugs foram corrigidos.

Fonte: linux.org.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster