@@ -59,7 +59,7 @@ mod persisted;
59
59
pub mod signer;
60
60
pub mod tx_builder;
61
61
pub ( crate ) mod utils;
62
- mod keyring;
62
+ pub mod keyring;
63
63
64
64
use crate :: collections:: { BTreeMap , HashMap , HashSet } ;
65
65
use crate :: descriptor:: {
@@ -86,7 +86,7 @@ pub use persisted::*;
86
86
pub use utils:: IsDust ;
87
87
use crate :: error:: KeychainNotInKeyRingError ;
88
88
use crate :: error:: KeychainNotInKeyRingError :: KeychainNotFound ;
89
- use crate :: wallet :: keyring:: KeyRing ;
89
+ use crate :: keyring:: KeyRing ;
90
90
91
91
/// A Bitcoin wallet
92
92
///
@@ -114,7 +114,7 @@ pub struct Wallet {
114
114
stage : ChangeSet ,
115
115
network : Network ,
116
116
secp : SecpCtx ,
117
- keychain_set : KeyRing
117
+ key_ring : KeyRing
118
118
}
119
119
120
120
/// An update to [`Wallet`].
@@ -288,8 +288,9 @@ impl std::error::Error for ApplyBlockError {}
288
288
pub type WalletTx < ' a > = CanonicalTx < ' a , Arc < Transaction > , ConfirmationBlockTime > ;
289
289
290
290
impl Wallet {
291
- pub fn new ( keychain_set : KeyRing , network : Network ) -> CreateParams {
292
- CreateParams :: new_with_keychain_set ( keychain_set, network)
291
+ pub fn new ( key_ring : KeyRing ) -> CreateParams {
292
+ let network = key_ring. network ( ) ;
293
+ CreateParams :: new_with_keyring ( key_ring, network)
293
294
}
294
295
295
296
/// Build a new single descriptor [`Wallet`].
@@ -387,15 +388,16 @@ impl Wallet {
387
388
388
389
// let (descriptor, mut descriptor_keymap) = (params.descriptor)(&secp, network)?;
389
390
// let (descriptor, mut descriptor_keymap) = (params.keychain_set.get_default_keychain().1.0)(&secp, network)?;
390
- let ( descriptor, mut descriptor_keymap ) = params. keychain_set . get_default_keychain ( ) . 1 ;
391
+ let descriptor = params. key_ring . get_default_keychain ( ) . 1 ;
391
392
check_wallet_descriptor ( & descriptor) ?;
392
- descriptor_keymap. extend ( descriptor_keymap. clone ( ) ) ;
393
+ // descriptor_keymap.extend(descriptor_keymap.clone());
393
394
394
- let signers = Arc :: new ( SignersContainer :: build (
395
- descriptor_keymap,
396
- & descriptor,
397
- & secp,
398
- ) ) ;
395
+ let signers = Arc :: new ( SignersContainer :: new ( ) ) ;
396
+ // let signers = Arc::new(SignersContainer::build(
397
+ // descriptor_keymap,
398
+ // &descriptor,
399
+ // &secp,
400
+ // ));
399
401
400
402
// TODO: Handle change
401
403
let ( change_descriptor, change_signers) = ( None , Arc :: new ( SignersContainer :: new ( ) ) ) ;
@@ -414,11 +416,11 @@ impl Wallet {
414
416
// None => (None, Arc::new(SignersContainer::new())),
415
417
// };
416
418
417
- let index = create_indexer ( params. keychain_set . clone ( ) , params. lookahead ) ?;
419
+ let index = create_indexer ( params. key_ring . clone ( ) , params. lookahead ) ?;
418
420
419
421
// TODO: Understand why we have the descriptors above but then request them from the indexer
420
422
// here. Is it just for sanity check?
421
- let descriptor = index. get_descriptor ( params. keychain_set . get_default_keychain ( ) . 0 ) . cloned ( ) ;
423
+ let descriptor = index. get_descriptor ( params. key_ring . get_default_keychain ( ) . 0 ) . cloned ( ) ;
422
424
// TODO: Doesn't work because get_change_keychain() returns an Option
423
425
// let change_descriptor = index.get_descriptor(params.keychain_set.get_change_keychain().0).cloned();
424
426
let indexed_graph = IndexedTxGraph :: new ( index) ;
@@ -441,7 +443,7 @@ impl Wallet {
441
443
indexed_graph,
442
444
stage,
443
445
secp,
444
- keychain_set : params. keychain_set ,
446
+ key_ring : params. key_ring ,
445
447
} )
446
448
}
447
449
@@ -2563,7 +2565,7 @@ fn create_indexer(
2563
2565
2564
2566
// TODO: I'm here, May 2
2565
2567
keyring. list_keychains ( ) . iter ( ) . for_each ( |k| {
2566
- indexer. insert_descriptor ( k. 0 , k. 1 . 0 . clone ( ) ) . expect ( "This should work" ) ;
2568
+ indexer. insert_descriptor ( k. 0 , k. 1 . clone ( ) ) . expect ( "This should work" ) ;
2567
2569
dbg ! ( "Inserting descriptor into indexer" ) ;
2568
2570
} ) ;
2569
2571
0 commit comments