diff options
| author | Alexander Karatarakis <alkarata@microsoft.com> | 2017-04-03 14:43:44 -0700 |
|---|---|---|
| committer | Alexander Karatarakis <alkarata@microsoft.com> | 2017-04-04 16:44:41 -0700 |
| commit | 1c1423014f5aab77339ebcb261e1d33e3106ec5d (patch) | |
| tree | 61d1e76d550cecefbc4a31b4803137d9cbcf0c43 /toolsrc/src/OptBool.cpp | |
| parent | 830a4d97d470dad6ca4a27ef1eecce17057fa432 (diff) | |
| download | vcpkg-1c1423014f5aab77339ebcb261e1d33e3106ec5d.tar.gz vcpkg-1c1423014f5aab77339ebcb261e1d33e3106ec5d.zip | |
opt_bool->OptBool
Diffstat (limited to 'toolsrc/src/OptBool.cpp')
| -rw-r--r-- | toolsrc/src/OptBool.cpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/toolsrc/src/OptBool.cpp b/toolsrc/src/OptBool.cpp new file mode 100644 index 000000000..1c063c92e --- /dev/null +++ b/toolsrc/src/OptBool.cpp @@ -0,0 +1,29 @@ +#include "pch.h" +#include "OptBool.h" +#include "vcpkg_Checks.h" + +namespace vcpkg::OptBool +{ + static const std::string UNSPECIFIED_NAME = "unspecified"; + static const std::string ENABLED_NAME = "enabled"; + static const std::string DISABLED_NAME = "disabled"; + Type parse(const std::string& s) + { + if (s == UNSPECIFIED_NAME) + { + return OptBoolT::UNSPECIFIED; + } + + if (s == ENABLED_NAME) + { + return OptBoolT::ENABLED; + } + + if (s == DISABLED_NAME) + { + return OptBoolT::DISABLED; + } + + Checks::exit_with_message(VCPKG_LINE_INFO, "Could not convert string [%s] to OptBool", s); + } +} |
