Releases: adishavit/argh
Releases · adishavit/argh
Refresh Release
Improved Linux install target handling
User Contributions
This release includes multiple user contribution including:
- Enhanced support for multi-options (HT: @sehe)
- CMake improvements (HT: @Manu343726 @memsharded @juev @bitmeal )
- Buck build support (HT: @njlr )
Conan and Bintray Support
This release adds conan package support to Argh! making it available for deployment from Bintray.
Batch Parameter Pre-registration
The main changes:
- Adds
add_params({...})
method for batch pre-registration of options as parameters. - Since pre-registration has to be done before parsing, we might as well just use the ctor, so adds new ctor for batch pre-registration.
- Adds
begin()
andend()
for directly using range-for over positional args:
for (auto& pos_arg : cmdl)
cout << '\t' << pos_arg << '\n';
Alt-Name Support
The main changes:
-
Multi-name flag/option support. Just provide a list of alternate names in
{ ... }
.
The first match will return.
Example:
cmdl({ "-t", "--threshold"}, 128) >> theshold;
If eithert
orthreshold
were specified (dashes are ignored), setthreshold
to that value.
Otherwise use the default:128
. -
No need to provide
argc
to parser.
You can now write:int main(int, char* argv[]) { argh::parser cmdl(argv); // Look Ma! no argc! // ....
-
Some internal refactoring.