diff options
| author | Alexander Karatarakis <alkarata@microsoft.com> | 2017-02-09 19:00:09 -0800 |
|---|---|---|
| committer | Alexander Karatarakis <alkarata@microsoft.com> | 2017-02-10 14:00:11 -0800 |
| commit | 95650bdd424b9499f4676dae8f110b15b3fd024f (patch) | |
| tree | e37452ea2f1e342e40bbd31480b210742f38088b /toolsrc/src/PostBuildLint_LinkageType.cpp | |
| parent | 7a0404cb839ae49bf7e52ca54f905d182a12de5d (diff) | |
| download | vcpkg-95650bdd424b9499f4676dae8f110b15b3fd024f.tar.gz vcpkg-95650bdd424b9499f4676dae8f110b15b3fd024f.zip | |
PostBuildLint enum revamp
Diffstat (limited to 'toolsrc/src/PostBuildLint_LinkageType.cpp')
| -rw-r--r-- | toolsrc/src/PostBuildLint_LinkageType.cpp | 45 |
1 files changed, 26 insertions, 19 deletions
diff --git a/toolsrc/src/PostBuildLint_LinkageType.cpp b/toolsrc/src/PostBuildLint_LinkageType.cpp index 8a3f35be8..6d2c2c935 100644 --- a/toolsrc/src/PostBuildLint_LinkageType.cpp +++ b/toolsrc/src/PostBuildLint_LinkageType.cpp @@ -1,34 +1,41 @@ #include "pch.h" #include "PostBuildLint_LinkageType.h" -#include "vcpkg_Checks.h" +#include "vcpkg_Enums.h" -namespace vcpkg::PostBuildLint +namespace vcpkg::PostBuildLint::LinkageType { - LinkageType linkage_type_value_of(const std::string& as_string) + static const std::string NULLVALUE_STRING = Enums::nullvalue_toString(ENUM_NAME); + + static const std::string NAME_DYNAMIC = "dynamic"; + static const std::string NAME_STATIC = "static"; + + const std::string& type::toString() const { - if (as_string == "dynamic") + switch (this->backing_enum) { - return LinkageType::DYNAMIC; + case LinkageType::DYNAMIC: + return NAME_DYNAMIC; + case LinkageType::STATIC: + return NAME_STATIC; + case LinkageType::NULLVALUE: + return NULLVALUE_STRING; + default: + Enums::unreachable(ENUM_NAME); } + } - if (as_string == "static") + type value_of(const std::string& as_string) + { + if (as_string == NAME_DYNAMIC) { - return LinkageType::STATIC; + return LinkageType::DYNAMIC; } - return LinkageType::UNKNOWN; - } - - std::string to_string(const LinkageType& build_info) - { - switch (build_info) + if (as_string == NAME_STATIC) { - case LinkageType::STATIC: - return "static"; - case LinkageType::DYNAMIC: - return "dynamic"; - default: - Checks::unreachable(); + return LinkageType::STATIC; } + + return LinkageType::NULLVALUE; } } |
