From 966a22d859db37b1775e2180e5be032fc4fdf483 Mon Sep 17 00:00:00 2001 From: Ben Woosley Date: Wed, 15 Jan 2020 21:48:59 +0000 Subject: Explicitly support conversion between equivalent hash types ScriptHash <-> CScriptID CKeyID -> PKHash PKHash -> WitnessV0KeyHash --- src/script/standard.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/script/standard.cpp') diff --git a/src/script/standard.cpp b/src/script/standard.cpp index a47ccef842..f8bfc3b69c 100644 --- a/src/script/standard.cpp +++ b/src/script/standard.cpp @@ -17,11 +17,16 @@ bool fAcceptDatacarrier = DEFAULT_ACCEPT_DATACARRIER; unsigned nMaxDatacarrierBytes = MAX_OP_RETURN_RELAY; CScriptID::CScriptID(const CScript& in) : uint160(Hash160(in.begin(), in.end())) {} +CScriptID::CScriptID(const ScriptHash& in) : uint160(static_cast(in)) {} ScriptHash::ScriptHash(const CScript& in) : uint160(Hash160(in.begin(), in.end())) {} +ScriptHash::ScriptHash(const CScriptID& in) : uint160(static_cast(in)) {} PKHash::PKHash(const CPubKey& pubkey) : uint160(pubkey.GetID()) {} +PKHash::PKHash(const CKeyID& pubkey_id) : uint160(pubkey_id) {} + WitnessV0KeyHash::WitnessV0KeyHash(const CPubKey& pubkey) : uint160(pubkey.GetID()) {} +WitnessV0KeyHash::WitnessV0KeyHash(const PKHash& pubkey_hash) : uint160(static_cast(pubkey_hash)) {} CKeyID ToKeyID(const PKHash& key_hash) { -- cgit v1.2.3