outpoint: OutPoint { txid: reveal, vout },
offset,
},
});
}
super::Output {
commit,
reveal,
total_fees,
parent: self.parent_info.clone().map(|info| info.id),
inscriptions: inscriptions_output,
}
}
pub(crate) fn create_batch_inscription_transactions(
&self,
wallet_inscriptions: BTreeMap<SatPoint, InscriptionId>,
chain: Chain,
locked_utxos: BTreeSet<OutPoint>,
mut utxos: BTreeMap<OutPoint, Amount>,
change: [Address; 2],
) -> Result<(Transaction, Transaction, TweakedKeyPair, u64)> {
if let Some(parent_info) = &self.parent_info {
assert!(self
.inscriptions
.iter()
.all(|inscription| inscription.parent().unwrap() == parent_info.id))
}
if self.satpoint.is_some() {
assert_eq!(
self.inscriptions.len(),
1,
"invariant: satpoint may only be specified when making a single inscription",
);
}
match self.mode {
Mode::SeparateOutputs => assert_eq!(