aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/src/PostBuildLint_LinkageType.cpp
diff options
context:
space:
mode:
authorAlexander Karatarakis <alkarata@microsoft.com>2017-02-09 19:00:09 -0800
committerAlexander Karatarakis <alkarata@microsoft.com>2017-02-10 14:00:11 -0800
commit95650bdd424b9499f4676dae8f110b15b3fd024f (patch)
treee37452ea2f1e342e40bbd31480b210742f38088b /toolsrc/src/PostBuildLint_LinkageType.cpp
parent7a0404cb839ae49bf7e52ca54f905d182a12de5d (diff)
downloadvcpkg-95650bdd424b9499f4676dae8f110b15b3fd024f.tar.gz
vcpkg-95650bdd424b9499f4676dae8f110b15b3fd024f.zip
PostBuildLint enum revamp
Diffstat (limited to 'toolsrc/src/PostBuildLint_LinkageType.cpp')
-rw-r--r--toolsrc/src/PostBuildLint_LinkageType.cpp45
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;
}
}