76 if (std::holds_alternative<PKHash>(dest) ||
77 std::holds_alternative<ScriptHash>(dest)) {
80 if (std::holds_alternative<WitnessV0KeyHash>(dest) ||
81 std::holds_alternative<WitnessV0ScriptHash>(dest)) {
84 if (std::holds_alternative<WitnessV1Taproot>(dest) ||
85 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.
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 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
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