.map(|flotsam| flotsam.inscription_id)
.collect::<HashSet<InscriptionId>>();
for flotsam in &mut floating_inscriptions {
if let Flotsam {
origin: Origin::New { parent, .. },
..
} = flotsam
{
if let Some(purported_parent) = parent {
if !potential_parents.contains(purported_parent) {
*parent = None;
}
}
}
}
// still have to normalize over inscription size
let total_output_value = tx.output.iter().map(|txout| txout.value).sum::<u64>();
for flotsam in &mut floating_inscriptions {
if let Flotsam {
origin: Origin::New { ref mut fee, .. },
..
} = flotsam
{
*fee = (total_input_value - total_output_value) / u64::from(id_counter);
}
}
let is_coinbase = tx
.input
.first()
.map(|tx_in| tx_in.previous_output.is_null())
.unwrap_or_default();
if is_coinbase {
floating_inscriptions.append(&mut self.flotsam);
}