summaryrefslogtreecommitdiffstats
path: root/Source/cmArgumentParser.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2022-07-20 19:44:44 (GMT)
committerBrad King <brad.king@kitware.com>2022-07-25 17:48:26 (GMT)
commit9a7efb681331f77a3873bd9fb5694ad46338c0f7 (patch)
tree87fa13089003ae4a54252e5e42cbac4b14721fe2 /Source/cmArgumentParser.cxx
parenta0ff592bf4744546159ae585d7c7727d49e2d138 (diff)
downloadCMake-9a7efb681331f77a3873bd9fb5694ad46338c0f7.zip
CMake-9a7efb681331f77a3873bd9fb5694ad46338c0f7.tar.gz
CMake-9a7efb681331f77a3873bd9fb5694ad46338c0f7.tar.bz2
cmArgumentParser: Offer private binding to cmParseArgumentsCommand
The `keywordsMissingValue` argument to `Parse()` is now needed only for the `cmake_parse_arguments` result `_KEYWORDS_MISSING_VALUES`. Offer its implementation a private binding for this. Our internal clients can use `ArgumentParser::NonEmpty<>` and friends to enforce the presence of values.
Diffstat (limited to 'Source/cmArgumentParser.cxx')
-rw-r--r--Source/cmArgumentParser.cxx3
1 files changed, 3 insertions, 0 deletions
diff --git a/Source/cmArgumentParser.cxx b/Source/cmArgumentParser.cxx
index 25d5c68..fcced96 100644
--- a/Source/cmArgumentParser.cxx
+++ b/Source/cmArgumentParser.cxx
@@ -116,6 +116,9 @@ void Instance::FinishKeyword()
if (this->KeywordsMissingValue != nullptr) {
this->KeywordsMissingValue->emplace_back(this->Keyword);
}
+ if (this->Bindings.KeywordMissingValue) {
+ this->Bindings.KeywordMissingValue(*this, this->Keyword);
+ }
}
}