Bitcoin Core  27.99.0
P2P Digital Currency
chaintype.cpp
Go to the documentation of this file.
1 // Copyright (c) 2023 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 <util/chaintype.h>
6 
7 #include <cassert>
8 #include <optional>
9 #include <string>
10 
11 std::string ChainTypeToString(ChainType chain)
12 {
13  switch (chain) {
14  case ChainType::MAIN:
15  return "main";
16  case ChainType::TESTNET:
17  return "test";
18  case ChainType::SIGNET:
19  return "signet";
20  case ChainType::REGTEST:
21  return "regtest";
22  }
23  assert(false);
24 }
25 
26 std::optional<ChainType> ChainTypeFromString(std::string_view chain)
27 {
28  if (chain == "main") {
29  return ChainType::MAIN;
30  } else if (chain == "test") {
31  return ChainType::TESTNET;
32  } else if (chain == "signet") {
33  return ChainType::SIGNET;
34  } else if (chain == "regtest") {
35  return ChainType::REGTEST;
36  } else {
37  return std::nullopt;
38  }
39 }
std::optional< ChainType > ChainTypeFromString(std::string_view chain)
Definition: chaintype.cpp:26
std::string ChainTypeToString(ChainType chain)
Definition: chaintype.cpp:11
ChainType
Definition: chaintype.h:11
assert(!tx.IsCoinBase())