mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-04-29 14:59:39 -04:00
39 lines
985 B
C++
39 lines
985 B
C++
// Copyright (c) 2023 The Bitcoin Core developers
|
|
// Distributed under the MIT software license, see the accompanying
|
|
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
|
|
#include <util/chaintype.h>
|
|
|
|
#include <cassert>
|
|
#include <optional>
|
|
#include <string>
|
|
|
|
std::string ChainTypeToString(ChainType chain)
|
|
{
|
|
switch (chain) {
|
|
case ChainType::MAIN:
|
|
return "main";
|
|
case ChainType::TESTNET4:
|
|
return "testnet4";
|
|
case ChainType::SIGNET:
|
|
return "signet";
|
|
case ChainType::REGTEST:
|
|
return "regtest";
|
|
}
|
|
assert(false);
|
|
}
|
|
|
|
std::optional<ChainType> ChainTypeFromString(std::string_view chain)
|
|
{
|
|
if (chain == "main") {
|
|
return ChainType::MAIN;
|
|
} else if (chain == "testnet4") {
|
|
return ChainType::TESTNET4;
|
|
} else if (chain == "signet") {
|
|
return ChainType::SIGNET;
|
|
} else if (chain == "regtest") {
|
|
return ChainType::REGTEST;
|
|
} else {
|
|
return std::nullopt;
|
|
}
|
|
}
|