Skip to content

Commit 22d3d22

Browse files
committed
Split single return type to three types
1 parent 88f5549 commit 22d3d22

File tree

40 files changed

+71
-263
lines changed

40 files changed

+71
-263
lines changed

client/src/client_sync/v17/blockchain.rs

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -323,20 +323,19 @@ macro_rules! impl_client_v17__save_mempool {
323323
macro_rules! impl_client_v17__scan_tx_out_set {
324324
() => {
325325
impl Client {
326-
pub fn scan_tx_out_set(
327-
&self,
328-
action: ScanAction,
329-
scan_objects: &[ScanObject],
330-
) -> Result<ScanTxOutSet> {
331-
let params = match action {
332-
ScanAction::Start => {
333-
vec![into_json(action)?, into_json(scan_objects)?]
334-
}
335-
ScanAction::Abort | ScanAction::Status => {
336-
vec![into_json(action)?]
337-
}
338-
};
339-
self.call("scantxoutset", &params)
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")?])
340339
}
341340
}
342341
};

client/src/client_sync/v17/mod.rs

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -303,24 +303,3 @@ impl Serialize for ImportMultiTimestamp {
303303
}
304304
}
305305
}
306-
307-
/// Args for the `scantxoutset`
308-
///
309-
/// Represents the action for the `scantxoutset` RPC call.
310-
#[derive(Clone, Debug, Deserialize, PartialEq, Serialize)]
311-
#[serde(rename_all = "lowercase")]
312-
pub enum ScanAction {
313-
Start,
314-
Abort,
315-
Status,
316-
}
317-
318-
/// Represents a scan object for scantxoutset (descriptor string or object).
319-
#[derive(Clone, Debug, Deserialize, PartialEq, Serialize)]
320-
#[serde(untagged)]
321-
pub enum ScanObject {
322-
/// Plain descriptor string
323-
Descriptor(String),
324-
/// Object containing descriptor and optional range
325-
WithDesc { desc: String },
326-
}

client/src/client_sync/v18/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ use crate::types::v18::*;
2424
pub use crate::client_sync::{
2525
v17::{
2626
AddNodeCommand, AddressType, ImportMultiRequest, ImportMultiScriptPubKey, ImportMultiTimestamp, Input, Output, SetBanCommand, TemplateRequest,
27-
TemplateRules, WalletCreateFundedPsbtInput,ScanAction, ScanObject,
27+
TemplateRules, WalletCreateFundedPsbtInput,
2828
},
2929
};
3030

client/src/client_sync/v19/mod.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ pub use crate::client_sync::{
2121
v17::{
2222
AddNodeCommand, AddressType, ImportMultiRequest, ImportMultiScriptPubKey, ImportMultiTimestamp, Input, Output, SetBanCommand, TemplateRequest,
2323
TemplateRules, WalletCreateFundedPsbtInput,
24-
ScanAction, ScanObject,
2524
},
2625
};
2726

client/src/client_sync/v20/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ use crate::types::v20::*;
1919
pub use crate::client_sync::{
2020
v17::{
2121
AddressType, AddNodeCommand, ImportMultiRequest, ImportMultiScriptPubKey, ImportMultiTimestamp, Input, Output, SetBanCommand, TemplateRequest, TemplateRules,
22-
WalletCreateFundedPsbtInput, ScanAction, ScanObject,
22+
WalletCreateFundedPsbtInput,
2323
},
2424
};
2525

client/src/client_sync/v21/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ use crate::types::v21::*;
2222
pub use crate::client_sync::{
2323
v17::{
2424
AddNodeCommand, AddressType, ImportMultiRequest, ImportMultiScriptPubKey, ImportMultiTimestamp, Input, Output, SetBanCommand, TemplateRequest,
25-
TemplateRules, WalletCreateFundedPsbtInput,ScanAction, ScanObject,
25+
TemplateRules, WalletCreateFundedPsbtInput,
2626
},
2727
};
2828

client/src/client_sync/v22/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ use crate::types::v22::*;
2020
pub use crate::client_sync::{
2121
v17::{
2222
AddNodeCommand, AddressType, ImportMultiRequest, ImportMultiScriptPubKey, ImportMultiTimestamp, Input, Output, SetBanCommand, TemplateRequest,
23-
TemplateRules, WalletCreateFundedPsbtInput, ScanAction, ScanObject,
23+
TemplateRules, WalletCreateFundedPsbtInput,
2424
},
2525
v21::ImportDescriptorsRequest,
2626
};

client/src/client_sync/v23/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ use crate::types::v23::*;
2121
pub use crate::client_sync::{
2222
v17::{
2323
AddNodeCommand, ImportMultiRequest, ImportMultiScriptPubKey, ImportMultiTimestamp, Input, Output, SetBanCommand, TemplateRequest, TemplateRules,
24-
WalletCreateFundedPsbtInput, ScanAction, ScanObject,
24+
WalletCreateFundedPsbtInput,
2525
},
2626
v21::ImportDescriptorsRequest,
2727
};

client/src/client_sync/v24/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ use crate::types::v24::*;
1717
pub use crate::client_sync::{
1818
v17::{
1919
AddNodeCommand, ImportMultiRequest, ImportMultiScriptPubKey, ImportMultiTimestamp, Input, Output, SetBanCommand, TemplateRequest, TemplateRules,
20-
WalletCreateFundedPsbtInput, ScanAction, ScanObject,
20+
WalletCreateFundedPsbtInput,
2121
},
2222
v21::ImportDescriptorsRequest,
2323
v23::AddressType,

client/src/client_sync/v25/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ use crate::types::v25::*;
1919
pub use crate::client_sync::{
2020
v17::{
2121
AddNodeCommand, ImportMultiRequest, ImportMultiScriptPubKey, ImportMultiTimestamp, Input, Output, SetBanCommand, TemplateRequest, TemplateRules,
22-
WalletCreateFundedPsbtInput, ScanAction, ScanObject,
22+
WalletCreateFundedPsbtInput,
2323
},
2424
v21::ImportDescriptorsRequest,
2525
v23::AddressType,

0 commit comments

Comments
 (0)