Branch data Line data Source code
1 : : // Copyright (c) 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/fees.h>
6 : :
7 : : #include <util/strencodings.h>
8 : :
9 : : #include <cassert>
10 : : #include <string_view>
11 : :
12 : 61 : std::string_view FeeRateEstimatorTypeToString(FeeRateEstimatorType feerate_estimator_type)
13 : : {
14 [ + + + - ]: 61 : switch (feerate_estimator_type) {
15 : 1 : case FeeRateEstimatorType::NONE:
16 : 1 : return "none";
17 : 1 : case FeeRateEstimatorType::BLOCK_POLICY:
18 : 1 : return "block_policy";
19 : 59 : case FeeRateEstimatorType::MEMPOOL_POLICY:
20 : 59 : return "mempool_policy";
21 : : }
22 : : // no default case, so the compiler can warn about missing cases
23 : 0 : assert(false);
24 : : }
25 : :
26 : 4 : FeeRateEstimatorType FeeRateEstimatorTypeFromString(std::string_view feerate_estimator_type)
27 : : {
28 : 4 : const auto normalized{ToLower(feerate_estimator_type)};
29 [ + + ]: 4 : if (normalized == "block_policy") return FeeRateEstimatorType::BLOCK_POLICY;
30 [ + + ]: 3 : if (normalized == "mempool_policy") return FeeRateEstimatorType::MEMPOOL_POLICY;
31 : : return FeeRateEstimatorType::NONE;
32 : 4 : }
|