#[macro_export]
macro_rules! impl_client_v23__create_wallet {
() => {
impl Client {
pub fn create_wallet(&self, wallet: &str) -> Result<CreateWallet> {
self.call("createwallet", &[wallet.into()])
}
pub fn create_legacy_wallet(&self, wallet: &str) -> Result<CreateWallet> {
let disable_private_keys = false;
let blank = false;
let passphrase = String::new();
let avoid_reuse = false;
let descriptors = false;
self.call(
"createwallet",
&[
wallet.into(),
disable_private_keys.into(),
blank.into(),
passphrase.into(),
avoid_reuse.into(),
descriptors.into(),
],
)
}
}
};
}
#[macro_export]
macro_rules! impl_client_v23__new_keypool {
() => {
impl Client {
pub fn new_keypool(&self) -> Result<()> {
match self.call("newkeypool", &[]) {
Ok(serde_json::Value::Null) => Ok(()),
Ok(res) => Err(Error::Returned(res.to_string())),
Err(err) => Err(err.into()),
}
}
}
};
}
#[macro_export]
macro_rules! impl_client_v23__restore_wallet {
() => {
impl Client {
pub fn restore_wallet(
&self,
wallet_name: &str,
backup_file: &Path,
) -> Result<RestoreWallet> {
self.call("restorewallet", &[wallet_name.into(), into_json(backup_file)?])
}
}
};
}