Descriptor::Expand

Expand a descriptor at a specified position.

Synopsis

Declared in <script/descriptor.h>

virtual
bool
Expand(
    int pos,
    SigningProvider const& provider,
    std::vector<CScript>& output_scripts,
    FlatSigningProvider& out,
    DescriptorCache* write_cache = nullptr) const = 0;

Return Value

True if the descriptor could be expanded at the position.

Parameters

NameDescription
pos [in]The position at which to expand the descriptor. If IsRange() is false, this is ignored.
provider [in]The provider to query for private keys in case of hardened derivation.
output_scripts [out]The expanded scriptPubKeys.
out [out]Scripts and public keys necessary for solving the expanded scriptPubKeys (may be equal to provider).
write_cache [out]Cache data necessary to evaluate the descriptor at this point without access to private keys.