deploymentinfo.cpp
1 // Copyright (c) 2016-present 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 #include <deploymentinfo.h> 6 7 #include <consensus/params.h> 8 9 #include <string_view> 10 11 const std::array<VBDeploymentInfo,Consensus::MAX_VERSION_BITS_DEPLOYMENTS> VersionBitsDeploymentInfo{ 12 VBDeploymentInfo{ 13 .name = "testdummy", 14 .gbt_optional_rule = true, 15 }, 16 }; 17 18 std::string DeploymentName(Consensus::BuriedDeployment dep) 19 { 20 assert(ValidDeployment(dep)); 21 switch (dep) { 22 case Consensus::DEPLOYMENT_HEIGHTINCB: 23 return "bip34"; 24 case Consensus::DEPLOYMENT_CLTV: 25 return "bip65"; 26 case Consensus::DEPLOYMENT_DERSIG: 27 return "bip66"; 28 case Consensus::DEPLOYMENT_CSV: 29 return "csv"; 30 case Consensus::DEPLOYMENT_SEGWIT: 31 return "segwit"; 32 } // no default case, so the compiler can warn about missing cases 33 return ""; 34 } 35 36 std::optional<Consensus::BuriedDeployment> GetBuriedDeployment(const std::string_view name) 37 { 38 if (name == "segwit") { 39 return Consensus::BuriedDeployment::DEPLOYMENT_SEGWIT; 40 } else if (name == "bip34") { 41 return Consensus::BuriedDeployment::DEPLOYMENT_HEIGHTINCB; 42 } else if (name == "dersig") { 43 return Consensus::BuriedDeployment::DEPLOYMENT_DERSIG; 44 } else if (name == "cltv") { 45 return Consensus::BuriedDeployment::DEPLOYMENT_CLTV; 46 } else if (name == "csv") { 47 return Consensus::BuriedDeployment::DEPLOYMENT_CSV; 48 } 49 return std::nullopt; 50 }