ENH: support option aliases with versioning

- can be used for adjusting option names between versions
This commit is contained in:
Mark Olesen
2017-11-22 14:42:31 +01:00
parent 416a3790ea
commit aa112c3f26
6 changed files with 200 additions and 76 deletions

View File

@ -38,12 +38,24 @@ int main(int argc, char *argv[])
{
argList::noBanner();
argList::noParallel();
argList::noFunctionObjects();
// argList::noFunctionObjects();
argList::removeOption("case");
argList::addOption("label", "value", "Test parsing of label");
argList::addOption("scalar", "value", "Test parsing of scalar");
// These are actually lies (never had -parseLabel, -parseScalar etc),
// but good for testing...
// Emits warning about it being old
argList::addOptionCompat("label", {"parseLabel", 1612});
// Specifying version=0 to use alias without any warnings
argList::addOptionCompat("scalar", {"parseScalar", 0});
// Fake a future option...
argList::addOptionCompat("label", {"parse-label", 2112});
argList args(argc, argv);
label ival;