/bitcoin/src/deploymentinfo.h
Line | Count | Source |
1 | | // Copyright (c) 2016-2021 The Bitcoin Core developers |
2 | | // Distributed under the MIT software license, see the accompanying |
3 | | // file COPYING or http://www.opensource.org/licenses/mit-license.php. |
4 | | |
5 | | #ifndef BITCOIN_DEPLOYMENTINFO_H |
6 | | #define BITCOIN_DEPLOYMENTINFO_H |
7 | | |
8 | | #include <consensus/params.h> |
9 | | |
10 | | #include <array> |
11 | | #include <optional> |
12 | | #include <string> |
13 | | |
14 | | struct VBDeploymentInfo { |
15 | | /** Deployment name */ |
16 | | const char *name; |
17 | | /** Whether GBT clients can safely ignore this rule in simplified usage */ |
18 | | bool gbt_optional_rule; |
19 | | }; |
20 | | |
21 | | extern const std::array<VBDeploymentInfo,Consensus::MAX_VERSION_BITS_DEPLOYMENTS> VersionBitsDeploymentInfo; |
22 | | |
23 | | std::string DeploymentName(Consensus::BuriedDeployment dep); |
24 | | |
25 | | inline std::string DeploymentName(Consensus::DeploymentPos pos) |
26 | 0 | { |
27 | 0 | assert(Consensus::ValidDeployment(pos)); Branch (27:5): [True: 0, False: 0]
|
28 | 0 | return VersionBitsDeploymentInfo[pos].name; |
29 | 0 | } |
30 | | |
31 | | std::optional<Consensus::BuriedDeployment> GetBuriedDeployment(const std::string_view deployment_name); |
32 | | |
33 | | #endif // BITCOIN_DEPLOYMENTINFO_H |