Ok(())
} else {
self.flotsam.extend(inscriptions.map(|flotsam| Flotsam {
offset: self.reward + flotsam.offset - output_value,
..flotsam
}));
self.reward += total_input_value - output_value;
Ok(())
}
}
fn calculate_sat(
input_sat_ranges: Option<&VecDeque<(u64, u64)>>,
input_offset: u64,
) -> Option<Sat> {
let input_sat_ranges = input_sat_ranges?;
let mut offset = 0;
for (start, end) in input_sat_ranges {
let size = end - start;
if offset + size > input_offset {
let n = start + input_offset - offset;
return Some(Sat(n));
}
offset += size;
}
unreachable!()
}
fn update_inscription_location(
&mut self,
input_sat_ranges: Option<&VecDeque<(u64, u64)>>,
flotsam: Flotsam,
new_satpoint: SatPoint,
) -> Result {
let inscription_id = flotsam.inscription_id;
let (unbound, sequence_number) = match flotsam.origin {
Origin::Old { old_satpoint } => {
self