Bitcoin
Public Member Functions | Protected Member Functions | List of all members
anonymous_namespace{descriptor.cpp}::SHDescriptor Class Referencefinal
Inheritance diagram for anonymous_namespace{descriptor.cpp}::SHDescriptor:
anonymous_namespace{descriptor.cpp}::DescriptorImpl Descriptor

Public Member Functions

 SHDescriptor (std::unique_ptr< DescriptorImpl > desc)
 
- Public Member Functions inherited from anonymous_namespace{descriptor.cpp}::DescriptorImpl
 DescriptorImpl (std::vector< std::unique_ptr< PubkeyProvider >> pubkeys, std::unique_ptr< DescriptorImpl > script, const std::string &name)
 
bool IsSolvable () const override
 
bool IsRange () const final
 
bool ToStringHelper (const SigningProvider *arg, std::string &out, bool priv) const
 
std::string ToString () const final
 
bool ToPrivateString (const SigningProvider &arg, std::string &out) const override final
 
bool ExpandHelper (int pos, const SigningProvider &arg, Span< const unsigned char > *cache_read, std::vector< CScript > &output_scripts, FlatSigningProvider &out, std::vector< unsigned char > *cache_write) const
 
bool Expand (int pos, const SigningProvider &provider, std::vector< CScript > &output_scripts, FlatSigningProvider &out, std::vector< unsigned char > *cache=nullptr) const final
 
bool ExpandFromCache (int pos, const std::vector< unsigned char > &cache, std::vector< CScript > &output_scripts, FlatSigningProvider &out) const final
 
void ExpandPrivate (int pos, const SigningProvider &provider, FlatSigningProvider &out) const final
 
- Public Member Functions inherited from Descriptor
virtual ~Descriptor ()=default
 

Protected Member Functions

std::vector< CScriptMakeScripts (const std::vector< CPubKey > &, const CScript *script, FlatSigningProvider &) const override
 
- Protected Member Functions inherited from anonymous_namespace{descriptor.cpp}::DescriptorImpl
virtual std::string ToStringExtra () const
 Return a serialization of anything except pubkey and script arguments, to be prepended to those. More...
 

Detailed Description

A parsed sh(...) descriptor.

Constructor & Destructor Documentation

◆ SHDescriptor()

anonymous_namespace{descriptor.cpp}::SHDescriptor::SHDescriptor ( std::unique_ptr< DescriptorImpl desc)
inline

Member Function Documentation

◆ MakeScripts()

std::vector<CScript> anonymous_namespace{descriptor.cpp}::SHDescriptor::MakeScripts ( const std::vector< CPubKey > &  pubkeys,
const CScript script,
FlatSigningProvider out 
) const
inlineoverrideprotectedvirtual

A helper function to construct the scripts for this descriptor.

This function is invoked once for every CScript produced by evaluating m_script_arg, or just once in case m_script_arg is nullptr.

Parameters
pubkeysThe evaluations of the m_pubkey_args field.
scriptThe evaluation of m_script_arg (or nullptr when m_script_arg is nullptr).
outA FlatSigningProvider to put scripts or public keys in that are necessary to the solver. The script arguments to this function are automatically added, as is the origin info of the provided pubkeys.
Returns
A vector with scriptPubKeys for this descriptor.

Implements anonymous_namespace{descriptor.cpp}::DescriptorImpl.


The documentation for this class was generated from the following file: