Versi 3.0 dari pustaka penguraian argumen baris perintah khusus header C++ (dialek C++17) telah dirilis. argparse, didistribusikan di bawah lisensi MIT.
Apa yang baru:
- Menambahkan dukungan untuk argumen yang saling eksklusif:
auto &group = program.add_mutually_exclusive_group(); group.add_argument("—pertama"); group.add_argument("—kedua");
- Modul C++20 ditambahkan;
- Menambahkan dukungan untuk memilih dari beberapa nilai:
program.tambahkan_argumen("input") .nilai_default(std::string{"baz"}) .pilihan("foo", "bar", "baz"); program.tambahkan_argumen("jumlah") .nilai_default(0) .pilihan(0, 1, 2, 3, 4, 5);
- Menambahkan dukungan untuk notasi biner, misalnya, 0b101:
argparse::ArgumentParser program("uji"); program.tambahkan_argumen("-n").scan<'b', uint8_t>();
- Menambahkan versi is_subcommand_used yang kelebihan beban yang menerima parser subperintah;
- Parameter exit_on_default_arguments telah ditambahkan ke ArgumentParser;
- Menambahkan dukungan untuk menyembunyikan subperintah dari keluaran perintah --help:
argparse::ArgumentParser program("uji"); argparse::ArgumentParser hidden_cmd("tersembunyi"); hidden_cmd.tambahkan_argumen("berkas").yang tersisa(); hidden_cmd.set_suppress(benar); program.tambahkan_subparser(cmd_tersembunyi);
- Menambahkan kemampuan untuk memeriksa keberadaan nilai yang diurai dalam ArgumentParser;
- Menambahkan perataan kolom untuk bantuan multi-baris untuk argumen;
- Banyak bug telah diperbaiki.
Sumber: linux.org.ru
