análisis de argumentos 3.0

análisis de argumentos 3.0

Lanzamiento de la biblioteca de encabezados 3.0 C++ (dialecto C++17) para analizar argumentos de línea de comando argumentar, distribuido bajo la licencia MIT.

¿Qué hay de nuevo?

  • soporte adicional para argumentos mutuamente excluyentes:

auto &group = program.add_mutually_exclusive_group(); group.add_argument("—primero"); group.add_argument("—segundo");

  • módulo C++20 agregado;
  • soporte agregado para seleccionar entre múltiples 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);

  • Se agregó soporte para notación binaria, por ejemplo 0b101:

argparse::Programa ArgumentParser("prueba"); program.add_argument("-n").scan<'b', uint8_t>();

  • se agregó una versión sobrecargada de is_subcommand_used, que acepta un analizador de subcomandos;
  • se agregó el parámetro exit_on_default_arguments a ArgumentParser;
  • Se agregó soporte para ocultar subcomandos de la salida del comando --help:

argparse::Programa ArgumentParser("prueba"); argparse::ArgumentParser oculta_cmd("oculta"); oculto_cmd.add_argument("archivos").restante(); oculta_cmd.set_suppress(verdadero); programa.add_subparser(hidden_cmd);

  • se agregó la capacidad de verificar valores analizados en ArgumentParser;
  • se agregó alineación a la columna de ayuda de varias líneas para los argumentos;
  • Se han solucionado muchos errores.

Fuente: linux.org.ru

Añadir un comentario