mirror of
https://github.com/dashpay/dash.git
synced 2024-12-26 04:22:55 +01:00
Merge #20771: refactor: Enable -Wswitch for FeeEstimateHorizon
faccf8b1e1af293dfe9158d732718e7798a2fd89 refactor: Enable -Wswitch for FeeEstimateHorizon (MarcoFalke) Pull request description: This enables the `-Wswitch` compiler warning for `FeeEstimateHorizon` by removing the `default` case in `switch` statements. ACKs for top commit: practicalswift: cr ACK faccf8b1e1af293dfe9158d732718e7798a2fd89 jonatack: ACK faccf8b1e1af293dfe9158d732718e7798a2fd89 hebasto: ACK faccf8b1e1af293dfe9158d732718e7798a2fd89, I have reviewed the code and it looks OK, I agree it can be merged. Tree-SHA512: 63a8dff6e8dead149ec2fa8319e7ff41022c9534d423d3086fd8f22be073dc4915f74c7fe9139ee681a8204730cf58c80ef40c93fb33032d586e68b4f78f557d
This commit is contained in:
parent
6c660cf29a
commit
54839f24af
@ -12,21 +12,18 @@
|
|||||||
#include <txmempool.h>
|
#include <txmempool.h>
|
||||||
#include <util/system.h>
|
#include <util/system.h>
|
||||||
|
|
||||||
static const char* FEE_ESTIMATES_FILENAME="fee_estimates.dat";
|
static const char* FEE_ESTIMATES_FILENAME = "fee_estimates.dat";
|
||||||
|
|
||||||
static constexpr double INF_FEERATE = 1e99;
|
static constexpr double INF_FEERATE = 1e99;
|
||||||
|
|
||||||
std::string StringForFeeEstimateHorizon(FeeEstimateHorizon horizon) {
|
std::string StringForFeeEstimateHorizon(FeeEstimateHorizon horizon)
|
||||||
static const std::map<FeeEstimateHorizon, std::string> horizon_strings = {
|
{
|
||||||
{FeeEstimateHorizon::SHORT_HALFLIFE, "short"},
|
switch (horizon) {
|
||||||
{FeeEstimateHorizon::MED_HALFLIFE, "medium"},
|
case FeeEstimateHorizon::SHORT_HALFLIFE: return "short";
|
||||||
{FeeEstimateHorizon::LONG_HALFLIFE, "long"},
|
case FeeEstimateHorizon::MED_HALFLIFE: return "medium";
|
||||||
};
|
case FeeEstimateHorizon::LONG_HALFLIFE: return "long";
|
||||||
auto horizon_string = horizon_strings.find(horizon);
|
} // no default case, so the compiler can warn about missing cases
|
||||||
|
assert(false);
|
||||||
if (horizon_string == horizon_strings.end()) return "unknown";
|
|
||||||
|
|
||||||
return horizon_string->second;
|
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* We will instantiate an instance of this class to track transactions that were
|
* We will instantiate an instance of this class to track transactions that were
|
||||||
@ -642,7 +639,7 @@ CFeeRate CBlockPolicyEstimator::estimateFee(int confTarget) const
|
|||||||
|
|
||||||
CFeeRate CBlockPolicyEstimator::estimateRawFee(int confTarget, double successThreshold, FeeEstimateHorizon horizon, EstimationResult* result) const
|
CFeeRate CBlockPolicyEstimator::estimateRawFee(int confTarget, double successThreshold, FeeEstimateHorizon horizon, EstimationResult* result) const
|
||||||
{
|
{
|
||||||
TxConfirmStats* stats;
|
TxConfirmStats* stats = nullptr;
|
||||||
double sufficientTxs = SUFFICIENT_FEETXS;
|
double sufficientTxs = SUFFICIENT_FEETXS;
|
||||||
switch (horizon) {
|
switch (horizon) {
|
||||||
case FeeEstimateHorizon::SHORT_HALFLIFE: {
|
case FeeEstimateHorizon::SHORT_HALFLIFE: {
|
||||||
@ -658,10 +655,8 @@ CFeeRate CBlockPolicyEstimator::estimateRawFee(int confTarget, double successThr
|
|||||||
stats = longStats.get();
|
stats = longStats.get();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default: {
|
} // no default case, so the compiler can warn about missing cases
|
||||||
throw std::out_of_range("CBlockPolicyEstimator::estimateRawFee unknown FeeEstimateHorizon");
|
assert(stats);
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
LOCK(m_cs_fee_estimator);
|
LOCK(m_cs_fee_estimator);
|
||||||
// Return failure if trying to analyze a target we're not tracking
|
// Return failure if trying to analyze a target we're not tracking
|
||||||
@ -691,10 +686,8 @@ unsigned int CBlockPolicyEstimator::HighestTargetTracked(FeeEstimateHorizon hori
|
|||||||
case FeeEstimateHorizon::LONG_HALFLIFE: {
|
case FeeEstimateHorizon::LONG_HALFLIFE: {
|
||||||
return longStats->GetMaxConfirms();
|
return longStats->GetMaxConfirms();
|
||||||
}
|
}
|
||||||
default: {
|
} // no default case, so the compiler can warn about missing cases
|
||||||
throw std::out_of_range("CBlockPolicyEstimator::HighestTargetTracked unknown FeeEstimateHorizon");
|
assert(false);
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned int CBlockPolicyEstimator::BlockSpan() const
|
unsigned int CBlockPolicyEstimator::BlockSpan() const
|
||||||
|
Loading…
Reference in New Issue
Block a user