55 if (!key.IsCompressed())
return PKHash(key);
72 if (key.IsCompressed()) {
75 return Vector(std::move(p2pkh), std::move(p2sh), std::move(segwit));
77 return Vector(std::move(p2pkh));
virtual bool AddCScript(const CScript &redeemScript)
std::vector< typename std::common_type< Args...>::type > Vector(Args &&...args)
Construct a vector with the specified elements.
const std::array< OutputType, 3 > OUTPUT_TYPES
std::vector< CTxDestination > GetAllDestinationsForKey(const CPubKey &key)
Get all destinations (potentially) supported by the wallet for the given key.
static const std::string OUTPUT_TYPE_STRING_P2SH_SEGWIT
An encapsulated public key.
Fillable signing provider that keeps keys in an address->secret map.
CScript GetScriptForDestination(const CTxDestination &dest)
Generate a Bitcoin scriptPubKey for the given CTxDestination.
CTxDestination AddAndGetDestinationForScript(FillableSigningProvider &keystore, const CScript &script, OutputType type)
Get a destination of the requested type (if possible) to the specified script.
bool IsSolvable(const SigningProvider &provider, const CScript &script)
const std::string & FormatOutputType(OutputType type)
static const std::string OUTPUT_TYPE_STRING_LEGACY
static const std::string OUTPUT_TYPE_STRING_BECH32
Serialized script, used inside transaction inputs and outputs.
CTxDestination GetDestinationForKey(const CPubKey &key, OutputType type)
Get a destination of the requested type (if possible) to the specified key.
boost::variant< CNoDestination, PKHash, ScriptHash, WitnessV0ScriptHash, WitnessV0KeyHash, WitnessUnknown > CTxDestination
A txout script template with a specific destination.
bool ParseOutputType(const std::string &type, OutputType &output_type)