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}