Struct miniscript::psbt::PsbtInputSatisfier
source · pub struct PsbtInputSatisfier<'psbt> {
pub psbt: &'psbt PartiallySignedTransaction,
pub index: usize,
}
Expand description
Psbt satisfier for at inputs at a particular index Takes in &psbt because multiple inputs will share the same psbt structure All operations on this structure will panic if index is more than number of inputs in pbst
Fields§
§psbt: &'psbt PartiallySignedTransaction
pbst
index: usize
input index
Implementations§
Trait Implementations§
source§impl<'psbt, Pk: MiniscriptKey + ToPublicKey> Satisfier<Pk> for PsbtInputSatisfier<'psbt>
impl<'psbt, Pk: MiniscriptKey + ToPublicKey> Satisfier<Pk> for PsbtInputSatisfier<'psbt>
source§fn lookup_tap_key_spend_sig(&self) -> Option<SchnorrSig>
fn lookup_tap_key_spend_sig(&self) -> Option<SchnorrSig>
Lookup the tap key spend sig
source§fn lookup_tap_leaf_script_sig(
&self,
pk: &Pk,
lh: &TapLeafHash
) -> Option<SchnorrSig>
fn lookup_tap_leaf_script_sig( &self, pk: &Pk, lh: &TapLeafHash ) -> Option<SchnorrSig>
Given a public key and a associated leaf hash, look up an schnorr signature with that key
source§fn lookup_raw_pkh_pk(&self, pkh: &Hash) -> Option<PublicKey>
fn lookup_raw_pkh_pk(&self, pkh: &Hash) -> Option<PublicKey>
Given a raw
Pkh
, lookup corresponding bitcoin::PublicKey
source§fn lookup_tap_control_block_map(
&self
) -> Option<&BTreeMap<ControlBlock, (Script, LeafVersion)>>
fn lookup_tap_control_block_map( &self ) -> Option<&BTreeMap<ControlBlock, (Script, LeafVersion)>>
Obtain a reference to the control block for a ver and script
source§fn lookup_raw_pkh_tap_leaf_script_sig(
&self,
pkh: &(Hash, TapLeafHash)
) -> Option<(XOnlyPublicKey, SchnorrSig)>
fn lookup_raw_pkh_tap_leaf_script_sig( &self, pkh: &(Hash, TapLeafHash) ) -> Option<(XOnlyPublicKey, SchnorrSig)>
Given a keyhash, look up the schnorr 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.
source§fn lookup_ecdsa_sig(&self, pk: &Pk) -> Option<EcdsaSig>
fn lookup_ecdsa_sig(&self, pk: &Pk) -> Option<EcdsaSig>
Given a public key, look up an ECDSA signature with that key
source§fn lookup_raw_pkh_ecdsa_sig(&self, pkh: &Hash) -> Option<(PublicKey, EcdsaSig)>
fn lookup_raw_pkh_ecdsa_sig(&self, pkh: &Hash) -> Option<(PublicKey, EcdsaSig)>
Given a keyhash, look up the EC 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.
source§fn check_after(&self, n: LockTime) -> bool
fn check_after(&self, n: LockTime) -> bool
Assert whether a absolute locktime is satisfied
source§fn check_older(&self, n: Sequence) -> bool
fn check_older(&self, n: Sequence) -> bool
Assert whether an relative locktime is satisfied
source§fn lookup_hash160(&self, h: &Pk::Hash160) -> Option<Preimage32>
fn lookup_hash160(&self, h: &Pk::Hash160) -> Option<Preimage32>
Given a HASH160 hash, look up its preimage
source§fn lookup_sha256(&self, h: &Pk::Sha256) -> Option<Preimage32>
fn lookup_sha256(&self, h: &Pk::Sha256) -> Option<Preimage32>
Given a SHA256 hash, look up its preimage
source§fn lookup_hash256(&self, h: &Pk::Hash256) -> Option<Preimage32>
fn lookup_hash256(&self, h: &Pk::Hash256) -> Option<Preimage32>
Given a HASH256 hash, look up its preimage
source§fn lookup_ripemd160(&self, h: &Pk::Ripemd160) -> Option<Preimage32>
fn lookup_ripemd160(&self, h: &Pk::Ripemd160) -> Option<Preimage32>
Given a RIPEMD160 hash, look up its preimage
source§fn lookup_raw_pkh_x_only_pk(&self, _: &Hash) -> Option<XOnlyPublicKey>
fn lookup_raw_pkh_x_only_pk(&self, _: &Hash) -> Option<XOnlyPublicKey>
Given a raw
Pkh
, lookup corresponding [bitcoin::XOnlyPublicKey
]Auto Trait Implementations§
impl<'psbt> RefUnwindSafe for PsbtInputSatisfier<'psbt>
impl<'psbt> Send for PsbtInputSatisfier<'psbt>
impl<'psbt> Sync for PsbtInputSatisfier<'psbt>
impl<'psbt> Unpin for PsbtInputSatisfier<'psbt>
impl<'psbt> UnwindSafe for PsbtInputSatisfier<'psbt>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more