Trait elements_miniscript::miniscript::satisfy::Satisfier[][src]

pub trait Satisfier<Pk: MiniscriptKey + ToPublicKey> {
Show 20 methods fn lookup_sig(&self, _: &Pk) -> Option<ElementsSig> { ... }
fn lookup_pkh_pk(&self, _: &Pk::Hash) -> Option<Pk> { ... }
fn lookup_pkh_sig(&self, _: &Pk::Hash) -> Option<(PublicKey, ElementsSig)> { ... }
fn lookup_sha256(&self, _: Hash) -> Option<Preimage32> { ... }
fn lookup_hash256(&self, _: Hash) -> Option<Preimage32> { ... }
fn lookup_ripemd160(&self, _: Hash) -> Option<Preimage32> { ... }
fn lookup_hash160(&self, _: Hash) -> Option<Preimage32> { ... }
fn check_older(&self, _: u32) -> bool { ... }
fn check_after(&self, _: u32) -> bool { ... }
fn lookup_nversion(&self) -> Option<u32> { ... }
fn lookup_hashprevouts(&self) -> Option<Hash> { ... }
fn lookup_hashsequence(&self) -> Option<Hash> { ... }
fn lookup_hashissuances(&self) -> Option<Hash> { ... }
fn lookup_outpoint(&self) -> Option<OutPoint> { ... }
fn lookup_scriptcode(&self) -> Option<&Script> { ... }
fn lookup_value(&self) -> Option<Value> { ... }
fn lookup_nsequence(&self) -> Option<u32> { ... }
fn lookup_outputs(&self) -> Option<&[TxOut]> { ... }
fn lookup_nlocktime(&self) -> Option<u32> { ... }
fn lookup_sighashu32(&self) -> Option<u32> { ... }
}
Expand description

Trait describing a lookup table for signatures, hash preimages, etc. Every method has a default implementation that simply returns None on every query. Users are expected to override the methods that they have data for.

Provided methods

Given a public key, look up a signature with that key

Given a Pkh, lookup corresponding Pk

Given a keyhash, look up the signature and the associated key Even if signatures for public key Hashes are not available, the users can use this map to provide pkh -> pk mapping which can be useful for dissatisfying pkh.

Given a SHA256 hash, look up its preimage

Given a HASH256 hash, look up its preimage

Given a RIPEMD160 hash, look up its preimage

Given a HASH160 hash, look up its preimage

Assert whether an relative locktime is satisfied

Assert whether a absolute locktime is satisfied

Introspection Data for Covenant support #1 Version

Item 2: hashprevouts

Item 3: hashsequence

ELEMENTS EXTRA: Item 3b: hashsequence

Item 4: outpoint

Item 5: scriptcode

Item 6: value

Item 7: sequence

Item 8: hashoutputs

Item 9: nlocktime

Item 10: sighash type as u32

Implementations on Foreign Types

Implementors