Skip to content

Commit 7ac5e64

Browse files
committed
Implement version specific types for importprunedfunds
1 parent 1a0ee6d commit 7ac5e64

File tree

14 files changed

+65
-2
lines changed

14 files changed

+65
-2
lines changed

client/src/client_sync/v17/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,7 @@ crate::impl_client_v17__backupwallet!();
130130
crate::impl_client_v17__encryptwallet!();
131131
crate::impl_client_v17__importaddress!();
132132
crate::impl_client_v17__importprivkey!();
133+
crate::impl_client_v17__importprunedfunds!();
133134

134135
/// Argument to the `Client::get_new_address_with_type` function.
135136
///

client/src/client_sync/v17/wallet.rs

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -573,3 +573,26 @@ macro_rules! impl_client_v17__importaddress {
573573
}
574574
};
575575
}
576+
577+
/// Implements Bitcoin Core JSON-RPC API method `importprunedfunds`
578+
#[macro_export]
579+
macro_rules! impl_client_v17__importprunedfunds {
580+
() => {
581+
impl Client {
582+
pub fn import_pruned_funds(
583+
&self,
584+
raw_transaction: &str,
585+
txout_proof: &str,
586+
) -> Result<()> {
587+
match self.call("importprunedfunds", &[raw_transaction.into(), txout_proof.into()]) {
588+
Ok(serde_json::Value::Null) => Ok(()),
589+
Ok(ref val) if val.is_null() => Ok(()),
590+
Ok(other) => Err(crate::client_sync::Error::Returned(format!(
591+
"importprunedfunds expected null, got: {}", other
592+
))),
593+
Err(e) => Err(e.into()),
594+
}
595+
}
596+
}
597+
};
598+
}

client/src/client_sync/v18/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,3 +123,4 @@ crate::impl_client_v17__backupwallet!();
123123
crate::impl_client_v17__encryptwallet!();
124124
crate::impl_client_v17__importaddress!();
125125
crate::impl_client_v17__importprivkey!();
126+
crate::impl_client_v17__importprunedfunds!();

client/src/client_sync/v19/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,3 +125,4 @@ crate::impl_client_v17__backupwallet!();
125125
crate::impl_client_v17__encryptwallet!();
126126
crate::impl_client_v17__importaddress!();
127127
crate::impl_client_v17__importprivkey!();
128+
crate::impl_client_v17__importprunedfunds!();

client/src/client_sync/v20/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,3 +124,4 @@ crate::impl_client_v17__backupwallet!();
124124
crate::impl_client_v20__encryptwallet!();
125125
crate::impl_client_v17__importaddress!();
126126
crate::impl_client_v17__importprivkey!();
127+
crate::impl_client_v17__importprunedfunds!();

client/src/client_sync/v21/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,3 +124,4 @@ crate::impl_client_v17__backupwallet!();
124124
crate::impl_client_v20__encryptwallet!();
125125
crate::impl_client_v17__importaddress!();
126126
crate::impl_client_v17__importprivkey!();
127+
crate::impl_client_v17__importprunedfunds!();

client/src/client_sync/v22/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,3 +125,4 @@ crate::impl_client_v17__backupwallet!();
125125
crate::impl_client_v20__encryptwallet!();
126126
crate::impl_client_v17__importaddress!();
127127
crate::impl_client_v17__importprivkey!();
128+
crate::impl_client_v17__importprunedfunds!();

client/src/client_sync/v23/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,7 @@ crate::impl_client_v17__backupwallet!();
126126
crate::impl_client_v20__encryptwallet!();
127127
crate::impl_client_v17__importaddress!();
128128
crate::impl_client_v17__importprivkey!();
129+
crate::impl_client_v17__importprunedfunds!();
129130

130131
/// Argument to the `Client::get_new_address_with_type` function.
131132
///

client/src/client_sync/v24.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,3 +122,4 @@ crate::impl_client_v17__backupwallet!();
122122
crate::impl_client_v20__encryptwallet!();
123123
crate::impl_client_v17__importaddress!();
124124
crate::impl_client_v17__importprivkey!();
125+
crate::impl_client_v17__importprunedfunds!();

client/src/client_sync/v25.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,3 +122,4 @@ crate::impl_client_v17__backupwallet!();
122122
crate::impl_client_v20__encryptwallet!();
123123
crate::impl_client_v17__importaddress!();
124124
crate::impl_client_v17__importprivkey!();
125+
crate::impl_client_v17__importprunedfunds!();

0 commit comments

Comments
 (0)