diff options
| author | Alexander Karatarakis <alkarata@microsoft.com> | 2017-04-25 17:11:21 -0700 |
|---|---|---|
| committer | Alexander Karatarakis <alkarata@microsoft.com> | 2017-04-25 17:56:18 -0700 |
| commit | 003693c5ac9b6dd4484341cb8b09c22243cef954 (patch) | |
| tree | d6e01a592e6c3bfc50efbc8ad2fc56b5f1840443 /toolsrc/include/PostBuildLint_LinkageType.h | |
| parent | 09b9340515b98b81d751b5be54376893a22dcbf0 (diff) | |
| download | vcpkg-003693c5ac9b6dd4484341cb8b09c22243cef954.tar.gz vcpkg-003693c5ac9b6dd4484341cb8b09c22243cef954.zip | |
Rework LinkageType enum
Diffstat (limited to 'toolsrc/include/PostBuildLint_LinkageType.h')
| -rw-r--r-- | toolsrc/include/PostBuildLint_LinkageType.h | 37 |
1 files changed, 20 insertions, 17 deletions
diff --git a/toolsrc/include/PostBuildLint_LinkageType.h b/toolsrc/include/PostBuildLint_LinkageType.h index e7e26885c..9855b485e 100644 --- a/toolsrc/include/PostBuildLint_LinkageType.h +++ b/toolsrc/include/PostBuildLint_LinkageType.h @@ -1,19 +1,21 @@ #pragma once #include <string> -namespace vcpkg::PostBuildLint::LinkageType +namespace vcpkg::PostBuildLint { - enum class BackingEnum + struct LinkageType final { - NULLVALUE = 0, - DYNAMIC, - STATIC - }; + enum class BackingEnum + { + NULLVALUE = 0, + DYNAMIC, + STATIC + }; - struct Type - { - constexpr Type() : backing_enum(BackingEnum::NULLVALUE) {} - constexpr explicit Type(BackingEnum backing_enum) : backing_enum(backing_enum) { } + static LinkageType value_of(const std::string& as_string); + + constexpr LinkageType() : backing_enum(BackingEnum::NULLVALUE) {} + constexpr explicit LinkageType(BackingEnum backing_enum) : backing_enum(backing_enum) { } constexpr operator BackingEnum() const { return backing_enum; } const std::string& to_string() const; @@ -22,13 +24,14 @@ namespace vcpkg::PostBuildLint::LinkageType BackingEnum backing_enum; }; - static const std::string ENUM_NAME = "vcpkg::PostBuildLint::LinkageType"; - - static constexpr Type NULLVALUE(BackingEnum::NULLVALUE); - static constexpr Type DYNAMIC(BackingEnum::DYNAMIC); - static constexpr Type STATIC(BackingEnum::STATIC); + namespace LinkageTypeC + { + static constexpr const char* ENUM_NAME = "vcpkg::PostBuildLint::LinkageType"; - static constexpr std::array<Type, 2> values = { DYNAMIC, STATIC }; + static constexpr LinkageType NULLVALUE(LinkageType::BackingEnum::NULLVALUE); + static constexpr LinkageType DYNAMIC(LinkageType::BackingEnum::DYNAMIC); + static constexpr LinkageType STATIC(LinkageType::BackingEnum::STATIC); - Type value_of(const std::string& as_string); + static constexpr std::array<LinkageType, 2> VALUES = { DYNAMIC, STATIC }; + } } |
