aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/include/PostBuildLint_BuildPolicies.h
diff options
context:
space:
mode:
Diffstat (limited to 'toolsrc/include/PostBuildLint_BuildPolicies.h')
-rw-r--r--toolsrc/include/PostBuildLint_BuildPolicies.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/toolsrc/include/PostBuildLint_BuildPolicies.h b/toolsrc/include/PostBuildLint_BuildPolicies.h
new file mode 100644
index 000000000..8298ffe2d
--- /dev/null
+++ b/toolsrc/include/PostBuildLint_BuildPolicies.h
@@ -0,0 +1,32 @@
+#pragma once
+#include <string>
+
+namespace vcpkg::PostBuildLint::BuildPolicies
+{
+ enum class backing_enum_t
+ {
+ UNKNOWN = 0,
+ DLLS_WITHOUT_LIBS
+ };
+
+ struct type
+ {
+ constexpr explicit type(backing_enum_t backing_enum) : backing_enum(backing_enum) { }
+ constexpr operator backing_enum_t() const { return backing_enum; }
+
+ const std::string& toString() const;
+ const std::string& cmake_variable() const;
+
+ private:
+ type();
+ backing_enum_t backing_enum;
+ };
+
+ static constexpr int value_count = 2;
+ const std::vector<type>& values();
+
+ static constexpr type UNKNOWN(backing_enum_t::UNKNOWN);
+ static constexpr type DLLS_WITHOUT_LIBS(backing_enum_t::DLLS_WITHOUT_LIBS);
+
+ type parse(const std::string& s);
+}