/src/CMake/Source/cmGenExContext.cxx
Line | Count | Source |
1 | | /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying |
2 | | file LICENSE.rst or https://cmake.org/licensing for details. */ |
3 | | #include "cmGenExContext.h" |
4 | | |
5 | | #include <utility> |
6 | | |
7 | | #include <cm/optional> |
8 | | |
9 | | #include "cmLocalGenerator.h" |
10 | | #include "cmPolicies.h" |
11 | | |
12 | | namespace cm { |
13 | | namespace GenEx { |
14 | | |
15 | | Context::Context(cmLocalGenerator const* lg, std::string config, |
16 | | std::string language) |
17 | 0 | : LG(lg) |
18 | 0 | , Config(std::move(config)) |
19 | 0 | , Language(std::move(language)) |
20 | 0 | { |
21 | 0 | } |
22 | | |
23 | | void Context::SetCMP0189(cmPolicies::PolicyStatus cmp0189) |
24 | 0 | { |
25 | 0 | this->CMP0189 = cmp0189; |
26 | 0 | } |
27 | | |
28 | | cmPolicies::PolicyStatus Context::GetCMP0189() const |
29 | 0 | { |
30 | 0 | if (this->CMP0189.has_value()) { |
31 | 0 | return *this->CMP0189; |
32 | 0 | } |
33 | 0 | return this->LG->GetPolicyStatus(cmPolicies::CMP0189); |
34 | 0 | } |
35 | | |
36 | | } |
37 | | } |