|
virtual | ~Descriptor ()=default |
|
virtual bool | IsRange () const =0 |
| Whether the expansion of this descriptor depends on the position. More...
|
|
virtual bool | IsSolvable () const =0 |
| Whether this descriptor has all information about signing ignoring lack of private keys. More...
|
|
virtual std::string | ToString () const =0 |
| Convert the descriptor back to a string, undoing parsing. More...
|
|
virtual bool | IsSingleType () const =0 |
| Whether this descriptor will return one scriptPubKey or multiple (aka is or is not combo) More...
|
|
virtual bool | ToPrivateString (const SigningProvider &provider, std::string &out) const =0 |
| Convert the descriptor to a private string. More...
|
|
virtual bool | Expand (int pos, const SigningProvider &provider, std::vector< CScript > &output_scripts, FlatSigningProvider &out, DescriptorCache *write_cache=nullptr) const =0 |
| Expand a descriptor at a specified position. More...
|
|
virtual bool | ExpandFromCache (int pos, const DescriptorCache &read_cache, std::vector< CScript > &output_scripts, FlatSigningProvider &out) const =0 |
| Expand a descriptor at a specified position using cached expansion data. More...
|
|
virtual void | ExpandPrivate (int pos, const SigningProvider &provider, FlatSigningProvider &out) const =0 |
| Expand the private key for a descriptor at a specified position, if possible. More...
|
|
virtual std::optional< OutputType > | GetOutputType () const =0 |
|
Interface for parsed descriptor objects.
Descriptors are strings that describe a set of scriptPubKeys, together with all information necessary to solve them. By combining all information into one, they avoid the need to separately import keys and scripts.
Descriptors may be ranged, which occurs when the public keys inside are specified in the form of HD chains (xpubs).
Descriptors always represent public information - public keys and scripts - but in cases where private keys need to be conveyed along with a descriptor, they can be included inside by changing public keys to private keys (WIF format), and changing xpubs by xprvs.
Reference documentation about the descriptor language can be found in doc/descriptors.md.
Definition at line 89 of file descriptor.h.