Skip to content

Commit de771f3

Browse files
committed
Implement scantxoutset method and test
Split single return type to three types Rename some fields for readability Rename some fields for readability
1 parent 24607b7 commit de771f3

File tree

41 files changed

+1071
-103
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+1071
-103
lines changed

client/src/client_sync/v17/blockchain.rs

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,29 @@ macro_rules! impl_client_v17__save_mempool {
318318
};
319319
}
320320

321+
/// Implements Bitcoin Core JSON-RPC API method `scantxoutset`
322+
#[macro_export]
323+
macro_rules! impl_client_v17__scan_tx_out_set {
324+
() => {
325+
impl Client {
326+
/// Aborts an ongoing `scantxoutset` scan.
327+
pub fn scan_tx_out_set_abort(&self) -> Result<ScanTxOutSetAbort> {
328+
self.call("scantxoutset", &[into_json("abort")?])
329+
}
330+
331+
/// Starts a scan of the UTXO set for specified descriptors.
332+
pub fn scan_tx_out_set_start(&self, scan_objects: &[&str]) -> Result<ScanTxOutSetStart> {
333+
self.call("scantxoutset", &[into_json("start")?, into_json(scan_objects)?])
334+
}
335+
336+
/// Checks the status of an ongoing `scantxoutset` scan.
337+
pub fn scan_tx_out_set_status(&self) -> Result<Option<ScanTxOutSetStatus>> {
338+
self.call("scantxoutset", &[into_json("status")?])
339+
}
340+
}
341+
};
342+
}
343+
321344
/// Implements Bitcoin Core JSON-RPC API method `verifychain`
322345
#[macro_export]
323346
macro_rules! impl_client_v17__verify_chain {

client/src/client_sync/v17/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ crate::impl_client_v17__get_tx_out_set_info!();
4848
crate::impl_client_v17__precious_block!();
4949
crate::impl_client_v17__prune_blockchain!();
5050
crate::impl_client_v17__save_mempool!();
51+
crate::impl_client_v17__scan_tx_out_set!();
5152
crate::impl_client_v17__verify_chain!();
5253
crate::impl_client_v17__verify_tx_out_proof!();
5354

client/src/client_sync/v18/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ crate::impl_client_v17__get_tx_out_set_info!();
5454
crate::impl_client_v17__precious_block!();
5555
crate::impl_client_v17__prune_blockchain!();
5656
crate::impl_client_v17__save_mempool!();
57+
crate::impl_client_v17__scan_tx_out_set!();
5758
crate::impl_client_v17__verify_chain!();
5859
crate::impl_client_v17__verify_tx_out_proof!();
5960

client/src/client_sync/v19/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ crate::impl_client_v17__get_tx_out_set_info!();
5050
crate::impl_client_v17__precious_block!();
5151
crate::impl_client_v17__prune_blockchain!();
5252
crate::impl_client_v17__save_mempool!();
53+
crate::impl_client_v17__scan_tx_out_set!();
5354
crate::impl_client_v17__verify_chain!();
5455
crate::impl_client_v17__verify_tx_out_proof!();
5556

client/src/client_sync/v20/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ crate::impl_client_v17__get_tx_out_set_info!();
4949
crate::impl_client_v17__precious_block!();
5050
crate::impl_client_v17__prune_blockchain!();
5151
crate::impl_client_v17__save_mempool!();
52+
crate::impl_client_v17__scan_tx_out_set!();
5253
crate::impl_client_v17__verify_chain!();
5354
crate::impl_client_v17__verify_tx_out_proof!();
5455

client/src/client_sync/v21/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ crate::impl_client_v17__get_tx_out_set_info!();
5252
crate::impl_client_v17__precious_block!();
5353
crate::impl_client_v17__prune_blockchain!();
5454
crate::impl_client_v17__save_mempool!();
55+
crate::impl_client_v17__scan_tx_out_set!();
5556
crate::impl_client_v17__verify_chain!();
5657
crate::impl_client_v17__verify_tx_out_proof!();
5758

client/src/client_sync/v22/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ crate::impl_client_v17__get_tx_out_set_info!();
5151
crate::impl_client_v17__precious_block!();
5252
crate::impl_client_v17__prune_blockchain!();
5353
crate::impl_client_v17__save_mempool!();
54+
crate::impl_client_v17__scan_tx_out_set!();
5455
crate::impl_client_v17__verify_chain!();
5556
crate::impl_client_v17__verify_tx_out_proof!();
5657

client/src/client_sync/v23/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ crate::impl_client_v17__get_tx_out_set_info!();
5252
crate::impl_client_v17__precious_block!();
5353
crate::impl_client_v17__prune_blockchain!();
5454
crate::impl_client_v23__save_mempool!();
55+
crate::impl_client_v17__scan_tx_out_set!();
5556
crate::impl_client_v17__verify_chain!();
5657
crate::impl_client_v17__verify_tx_out_proof!();
5758

client/src/client_sync/v24/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ crate::impl_client_v17__get_tx_out_set_info!();
4949
crate::impl_client_v17__precious_block!();
5050
crate::impl_client_v17__prune_blockchain!();
5151
crate::impl_client_v23__save_mempool!();
52+
crate::impl_client_v17__scan_tx_out_set!();
5253
crate::impl_client_v17__verify_chain!();
5354
crate::impl_client_v17__verify_tx_out_proof!();
5455

client/src/client_sync/v25/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ crate::impl_client_v17__get_tx_out_set_info!();
5151
crate::impl_client_v17__precious_block!();
5252
crate::impl_client_v17__prune_blockchain!();
5353
crate::impl_client_v23__save_mempool!();
54+
crate::impl_client_v17__scan_tx_out_set!();
5455
crate::impl_client_v17__verify_chain!();
5556
crate::impl_client_v17__verify_tx_out_proof!();
5657

0 commit comments

Comments
 (0)