@@ -35,7 +35,7 @@ pub trait Satisfier<Pk: MiniscriptKey + ToPublicKey> {
35
35
fn lookup_ecdsa_sig ( & self , _: & Pk ) -> Option < bitcoin:: ecdsa:: Signature > { None }
36
36
37
37
/// Lookup the tap key spend sig
38
- fn lookup_tap_key_spend_sig ( & self ) -> Option < bitcoin:: taproot:: Signature > { None }
38
+ fn lookup_tap_key_spend_sig ( & self , _ : & Pk ) -> Option < bitcoin:: taproot:: Signature > { None }
39
39
40
40
/// Given a public key and a associated leaf hash, look up an schnorr signature with that key
41
41
fn lookup_tap_leaf_script_sig (
@@ -290,8 +290,8 @@ impl<Pk: MiniscriptKey + ToPublicKey, S: Satisfier<Pk>> Satisfier<Pk> for &S {
290
290
( * * self ) . lookup_raw_pkh_ecdsa_sig ( pkh)
291
291
}
292
292
293
- fn lookup_tap_key_spend_sig ( & self ) -> Option < bitcoin:: taproot:: Signature > {
294
- ( * * self ) . lookup_tap_key_spend_sig ( )
293
+ fn lookup_tap_key_spend_sig ( & self , pk : & Pk ) -> Option < bitcoin:: taproot:: Signature > {
294
+ ( * * self ) . lookup_tap_key_spend_sig ( pk )
295
295
}
296
296
297
297
fn lookup_raw_pkh_tap_leaf_script_sig (
@@ -335,8 +335,8 @@ impl<Pk: MiniscriptKey + ToPublicKey, S: Satisfier<Pk>> Satisfier<Pk> for &mut S
335
335
( * * self ) . lookup_tap_leaf_script_sig ( p, h)
336
336
}
337
337
338
- fn lookup_tap_key_spend_sig ( & self ) -> Option < bitcoin:: taproot:: Signature > {
339
- ( * * self ) . lookup_tap_key_spend_sig ( )
338
+ fn lookup_tap_key_spend_sig ( & self , pk : & Pk ) -> Option < bitcoin:: taproot:: Signature > {
339
+ ( * * self ) . lookup_tap_key_spend_sig ( pk )
340
340
}
341
341
342
342
fn lookup_raw_pkh_pk ( & self , pkh : & hash160:: Hash ) -> Option < bitcoin:: PublicKey > {
@@ -400,10 +400,10 @@ macro_rules! impl_tuple_satisfier {
400
400
None
401
401
}
402
402
403
- fn lookup_tap_key_spend_sig( & self ) -> Option <bitcoin:: taproot:: Signature > {
403
+ fn lookup_tap_key_spend_sig( & self , pk : & Pk ) -> Option <bitcoin:: taproot:: Signature > {
404
404
let & ( $( ref $ty, ) * ) = self ;
405
405
$(
406
- if let Some ( result) = $ty. lookup_tap_key_spend_sig( ) {
406
+ if let Some ( result) = $ty. lookup_tap_key_spend_sig( pk ) {
407
407
return Some ( result) ;
408
408
}
409
409
) *
@@ -678,12 +678,13 @@ impl<Pk: MiniscriptKey + ToPublicKey> Placeholder<Pk> {
678
678
debug_assert ! ( s. len( ) == * size) ;
679
679
s
680
680
} ) ,
681
- Placeholder :: SchnorrSigPk ( _, _, size) => {
682
- sat. lookup_tap_key_spend_sig ( ) . map ( |s| s. to_vec ( ) ) . map ( |s| {
681
+ Placeholder :: SchnorrSigPk ( pk, _, size) => sat
682
+ . lookup_tap_key_spend_sig ( pk)
683
+ . map ( |s| s. to_vec ( ) )
684
+ . map ( |s| {
683
685
debug_assert ! ( s. len( ) == * size) ;
684
686
s
685
- } )
686
- }
687
+ } ) ,
687
688
Placeholder :: SchnorrSigPkHash ( pkh, tap_leaf_hash, size) => sat
688
689
. lookup_raw_pkh_tap_leaf_script_sig ( & ( * pkh, * tap_leaf_hash) )
689
690
. map ( |( _, s) | {
0 commit comments