ord/subcommand/
supply.rs

1use super::*;
2
3#[derive(Debug, PartialEq, Serialize, Deserialize)]
4pub struct Output {
5  pub supply: u64,
6  pub first: u64,
7  pub last: u64,
8  pub last_mined_in_block: u32,
9}
10
11pub(crate) fn run() -> SubcommandResult {
12  let mut last = 0;
13
14  loop {
15    if Height(last + 1).subsidy() == 0 {
16      break;
17    }
18    last += 1;
19  }
20
21  Ok(Some(Box::new(Output {
22    supply: Sat::SUPPLY,
23    first: 0,
24    last: Sat::SUPPLY - 1,
25    last_mined_in_block: last,
26  })))
27}