Skip to content

Commit cec8afd

Browse files
committed
Implement pruneblock method and test
1 parent f0586c0 commit cec8afd

File tree

45 files changed

+161
-96
lines changed

Some content is hidden

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

45 files changed

+161
-96
lines changed

client/src/client_sync/v17/blockchain.rs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -289,6 +289,19 @@ macro_rules! impl_client_v17__preciousblock {
289289
};
290290
}
291291

292+
/// Implements Bitcoin Core JSON-RPC API method `pruneblockchain`
293+
#[macro_export]
294+
macro_rules! impl_client_v17__pruneblockchain {
295+
() => {
296+
impl Client {
297+
/// Instructs the node to prune the blockchain up to a specified height or timestamp.
298+
pub fn prune_blockchain(&self, target: u64) -> Result<PruneBlockchain> {
299+
self.call("pruneblockchain", &[target.into()])
300+
}
301+
}
302+
};
303+
}
304+
292305
/// Implements Bitcoin Core JSON-RPC API method `verifytxoutproof`
293306
#[macro_export]
294307
macro_rules! impl_client_v17__verifytxoutproof {

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__gettxout!();
4848
crate::impl_client_v17__gettxoutproof!();
4949
crate::impl_client_v17__gettxoutsetinfo!();
5050
crate::impl_client_v17__preciousblock!();
51+
crate::impl_client_v17__pruneblockchain!();
5152
crate::impl_client_v17__verifytxoutproof!();
5253

5354
// == Control ==

client/src/client_sync/v18/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ crate::impl_client_v17__gettxoutproof!();
4242
crate::impl_client_v17__gettxoutsetinfo!();
4343
crate::impl_client_v17__preciousblock!();
4444
crate::impl_client_v17__verifytxoutproof!();
45+
crate::impl_client_v17__pruneblockchain!();
4546

4647
// == Control ==
4748
crate::impl_client_v17__getmemoryinfo!();

client/src/client_sync/v19/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ crate::impl_client_v17__gettxoutproof!();
4444
crate::impl_client_v17__gettxoutsetinfo!();
4545
crate::impl_client_v17__preciousblock!();
4646
crate::impl_client_v17__verifytxoutproof!();
47+
crate::impl_client_v17__pruneblockchain!();
4748

4849
// == Control ==
4950
crate::impl_client_v17__getmemoryinfo!();

client/src/client_sync/v20.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ crate::impl_client_v17__gettxoutproof!();
4141
crate::impl_client_v17__gettxoutsetinfo!();
4242
crate::impl_client_v17__preciousblock!();
4343
crate::impl_client_v17__verifytxoutproof!();
44+
crate::impl_client_v17__pruneblockchain!();
4445

4546
// == Control ==
4647
crate::impl_client_v17__getmemoryinfo!();

client/src/client_sync/v21/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ crate::impl_client_v17__gettxoutproof!();
4343
crate::impl_client_v17__gettxoutsetinfo!();
4444
crate::impl_client_v17__preciousblock!();
4545
crate::impl_client_v17__verifytxoutproof!();
46+
crate::impl_client_v17__pruneblockchain!();
4647

4748
// == Control ==
4849
crate::impl_client_v17__getmemoryinfo!();

client/src/client_sync/v22/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ crate::impl_client_v17__gettxoutproof!();
4444
crate::impl_client_v17__gettxoutsetinfo!();
4545
crate::impl_client_v17__preciousblock!();
4646
crate::impl_client_v17__verifytxoutproof!();
47+
crate::impl_client_v17__pruneblockchain!();
4748

4849
// == Control ==
4950
crate::impl_client_v17__getmemoryinfo!();

client/src/client_sync/v23/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ crate::impl_client_v17__gettxoutproof!();
4444
crate::impl_client_v17__gettxoutsetinfo!();
4545
crate::impl_client_v17__preciousblock!();
4646
crate::impl_client_v17__verifytxoutproof!();
47+
crate::impl_client_v17__pruneblockchain!();
4748

4849
// == Control ==
4950
crate::impl_client_v17__getmemoryinfo!();

client/src/client_sync/v24.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ crate::impl_client_v17__gettxoutproof!();
4141
crate::impl_client_v17__gettxoutsetinfo!();
4242
crate::impl_client_v17__preciousblock!();
4343
crate::impl_client_v17__verifytxoutproof!();
44+
crate::impl_client_v17__pruneblockchain!();
4445

4546
// == Control ==
4647
crate::impl_client_v17__getmemoryinfo!();

client/src/client_sync/v25.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ crate::impl_client_v17__gettxoutproof!();
4141
crate::impl_client_v17__gettxoutsetinfo!();
4242
crate::impl_client_v17__preciousblock!();
4343
crate::impl_client_v17__verifytxoutproof!();
44+
crate::impl_client_v17__pruneblockchain!();
4445

4546
// == Control ==
4647
crate::impl_client_v17__getmemoryinfo!();

0 commit comments

Comments
 (0)