summaryrefslogtreecommitdiff
path: root/Source/cmArgumentParserTypes.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2022-07-06 11:45:57 -0400
committerBrad King <brad.king@kitware.com>2022-07-07 09:49:04 -0400
commitf46b2e914256322fc8d33b425ec01e9d9c1496ba (patch)
treec52e8e524354fa7c7248ea5ed14802e470a6933b /Source/cmArgumentParserTypes.h
parente6d1e29ffa6bd3141a769d1281f3407ed0774139 (diff)
downloadcmake-f46b2e914256322fc8d33b425ec01e9d9c1496ba.tar.gz
cmArgumentParser: Model maybe-missing string with wrapper type
Bindings to `std::string` require one value. Some clients have been filtering `keywordsMissingValue` to support keywords that tolerate a missing value. Offer them a type-safe way to achieve this instead.
Diffstat (limited to 'Source/cmArgumentParserTypes.h')
-rw-r--r--Source/cmArgumentParserTypes.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/Source/cmArgumentParserTypes.h b/Source/cmArgumentParserTypes.h
index 7d4ce6fcdc..9afa5c7166 100644
--- a/Source/cmArgumentParserTypes.h
+++ b/Source/cmArgumentParserTypes.h
@@ -7,6 +7,11 @@
namespace ArgumentParser {
template <typename T>
+struct Maybe : public T
+{
+};
+
+template <typename T>
struct MaybeEmpty : public T
{
};