78 return Vector(std::move(p2pkh), std::move(p2sh), std::move(segwit));
80 return Vector(std::move(p2pkh));
111 if (std::holds_alternative<PKHash>(dest) ||
112 std::holds_alternative<ScriptHash>(dest)) {
115 if (std::holds_alternative<WitnessV0KeyHash>(dest) ||
116 std::holds_alternative<WitnessV0ScriptHash>(dest)) {
119 if (std::holds_alternative<WitnessV1Taproot>(dest) ||
120 std::holds_alternative<WitnessUnknown>(dest)) {
CScript GetScriptForDestination(const CTxDestination &dest)
Generate a Bitcoin scriptPubKey for the given CTxDestination.
std::variant< CNoDestination, PubKeyDestination, PKHash, ScriptHash, WitnessV0ScriptHash, WitnessV0KeyHash, WitnessV1Taproot, PayToAnchor, WitnessUnknown > CTxDestination
A txout script categorized into standard templates.
An encapsulated public key.
bool IsCompressed() const
Check whether this is a compressed public key.
Serialized script, used inside transaction inputs and outputs.
A reference to a CScript: the Hash160 of its serialization.
static const std::string OUTPUT_TYPE_STRING_BECH32
CTxDestination GetDestinationForKey(const CPubKey &key, OutputType type)
Get a destination of the requested type (if possible) to the specified key.
CTxDestination AddAndGetDestinationForScript(FlatSigningProvider &keystore, const CScript &script, OutputType type)
Get a destination of the requested type (if possible) to the specified script.
static const std::string OUTPUT_TYPE_STRING_BECH32M
std::optional< OutputType > OutputTypeFromDestination(const CTxDestination &dest)
Get the OutputType for a CTxDestination.
static const std::string OUTPUT_TYPE_STRING_LEGACY
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
std::optional< OutputType > ParseOutputType(const std::string &type)
const std::string & FormatOutputType(OutputType type)
static const std::string OUTPUT_TYPE_STRING_UNKNOWN
std::map< CScriptID, CScript > scripts
std::vector< typename std::common_type< Args... >::type > Vector(Args &&... args)
Construct a vector with the specified elements.