blob: 43bdbed7b930f5e44cca69f87127f909ec83c35e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
#include "pch.h"
#include "PostBuildLint_LinkageType.h"
#include "vcpkg_Checks.h"
#include "vcpkg_Enums.h"
namespace vcpkg::PostBuildLint
{
static const std::string NULLVALUE_STRING = Enums::nullvalue_to_string(LinkageTypeC::ENUM_NAME);
static const std::string NAME_DYNAMIC = "dynamic";
static const std::string NAME_STATIC = "static";
LinkageType LinkageType::value_of(const std::string& as_string)
{
if (as_string == NAME_DYNAMIC)
{
return LinkageTypeC::DYNAMIC;
}
if (as_string == NAME_STATIC)
{
return LinkageTypeC::STATIC;
}
return LinkageTypeC::NULLVALUE;
}
const std::string& LinkageType::to_string() const
{
switch (this->backing_enum)
{
case LinkageTypeC::DYNAMIC: return NAME_DYNAMIC;
case LinkageTypeC::STATIC: return NAME_STATIC;
case LinkageTypeC::NULLVALUE: return NULLVALUE_STRING;
default: Checks::unreachable(VCPKG_LINE_INFO);
}
}
}
|