refactor: simplify repeated comparisons in FindChallenges

This obviates that the LHS of the comparison is always the same
This commit is contained in:
Lőrinc 2025-04-28 15:48:53 +02:00
parent f670836112
commit e400ac5352

View file

@ -308,18 +308,14 @@ std::set<Challenge> FindChallenges(const NodeRef& root)
for (const auto& key : ref->keys) { for (const auto& key : ref->keys) {
chal.emplace(ChallengeType::PK, ChallengeNumber(key)); chal.emplace(ChallengeType::PK, ChallengeNumber(key));
} }
if (ref->fragment == miniscript::Fragment::OLDER) { switch (ref->fragment) {
chal.emplace(ChallengeType::OLDER, ref->k); case Fragment::OLDER: chal.emplace(ChallengeType::OLDER, ref->k); break;
} else if (ref->fragment == miniscript::Fragment::AFTER) { case Fragment::AFTER: chal.emplace(ChallengeType::AFTER, ref->k); break;
chal.emplace(ChallengeType::AFTER, ref->k); case Fragment::SHA256: chal.emplace(ChallengeType::SHA256, ChallengeNumber(ref->data)); break;
} else if (ref->fragment == miniscript::Fragment::SHA256) { case Fragment::RIPEMD160: chal.emplace(ChallengeType::RIPEMD160, ChallengeNumber(ref->data)); break;
chal.emplace(ChallengeType::SHA256, ChallengeNumber(ref->data)); case Fragment::HASH256: chal.emplace(ChallengeType::HASH256, ChallengeNumber(ref->data)); break;
} else if (ref->fragment == miniscript::Fragment::RIPEMD160) { case Fragment::HASH160: chal.emplace(ChallengeType::HASH160, ChallengeNumber(ref->data)); break;
chal.emplace(ChallengeType::RIPEMD160, ChallengeNumber(ref->data)); default: break;
} else if (ref->fragment == miniscript::Fragment::HASH256) {
chal.emplace(ChallengeType::HASH256, ChallengeNumber(ref->data));
} else if (ref->fragment == miniscript::Fragment::HASH160) {
chal.emplace(ChallengeType::HASH160, ChallengeNumber(ref->data));
} }
for (const auto& sub : ref->subs) { for (const auto& sub : ref->subs) {
stack.push_back(sub.get()); stack.push_back(sub.get());