ord/subcommand/wallet/
receive.rs

1use super::*;
2
3#[derive(Deserialize, Serialize)]
4pub struct Output {
5  pub addresses: Vec<Address<NetworkUnchecked>>,
6}
7
8#[derive(Debug, Parser)]
9pub(crate) struct Receive {
10  #[arg(short, long, help = "Generate <NUMBER> addresses.")]
11  number: Option<u64>,
12}
13
14impl Receive {
15  pub(crate) fn run(self, wallet: Wallet) -> SubcommandResult {
16    let mut addresses: Vec<Address<NetworkUnchecked>> = Vec::new();
17
18    for _ in 0..self.number.unwrap_or(1) {
19      addresses.push(
20        wallet
21          .bitcoin_client()
22          .get_new_address(None, Some(bitcoincore_rpc::json::AddressType::Bech32m))?,
23      );
24    }
25
26    Ok(Some(Box::new(Output { addresses })))
27  }
28}