MCPcopy Create free account
hub / github.com/BitVM/BitVM / new_for_validation

Method new_for_validation

bridge/src/graphs/peg_out.rs:726–1094  ·  view source on GitHub ↗
(&self)

Source from the content-addressed store, hash-verified

724 }
725
726 pub fn new_for_validation(&self) -> Self {
727 let peg_in_confirm_txid = self.take_1_transaction.tx().input[0].previous_output.txid; // Self-referencing
728
729 let connectors = Self::create_new_connectors(
730 self.network,
731 &self.n_of_n_taproot_public_key,
732 &self.operator_taproot_public_key,
733 &self.operator_public_key,
734 &self.connector_1.commitment_public_keys,
735 &self.connector_2.commitment_public_keys,
736 &self.connector_6.commitment_public_keys,
737 &self.connector_b.commitment_public_keys,
738 &self.connector_e_1.commitment_public_keys(),
739 &self.connector_e_2.commitment_public_keys(),
740 );
741
742 let peg_out_confirm_vout_0 = 0;
743 let peg_out_confirm_transaction = PegOutConfirmTransaction::new_for_validation(
744 self.network,
745 &self.operator_public_key,
746 &connectors.connector_6,
747 Input {
748 outpoint: self.peg_out_confirm_transaction.tx().input[peg_out_confirm_vout_0]
749 .previous_output, // Self-referencing
750 amount: self.peg_out_confirm_transaction.prev_outs()[peg_out_confirm_vout_0].value, // Self-referencing
751 },
752 );
753
754 let kick_off_1_vout_0 = 0;
755 let kick_off_1_transaction = KickOff1Transaction::new_for_validation(
756 self.network,
757 &self.operator_taproot_public_key,
758 &self.n_of_n_taproot_public_key,
759 &connectors.connector_1,
760 &connectors.connector_2,
761 &connectors.connector_6,
762 Input {
763 outpoint: self.kick_off_1_transaction.tx().input[kick_off_1_vout_0].previous_output, // Self-referencing
764 amount: self.kick_off_1_transaction.prev_outs()[kick_off_1_vout_0].value, // Self-referencing
765 },
766 );
767 let kick_off_1_txid = kick_off_1_transaction.tx().compute_txid();
768
769 let start_time_vout_0 = 2;
770 let start_time_transaction = StartTimeTransaction::new_for_validation(
771 self.network,
772 &self.operator_public_key,
773 &connectors.connector_2,
774 Input {
775 outpoint: OutPoint {
776 txid: kick_off_1_txid,
777 vout: start_time_vout_0.to_u32().unwrap(),
778 },
779 amount: kick_off_1_transaction.tx().output[start_time_vout_0].value,
780 },
781 );
782
783 let start_time_timeout_vout_0 = 2;

Callers 1

validateMethod · 0.45

Calls 6

create_new_connectorsFunction · 0.85
connectors_numMethod · 0.80
cloneMethod · 0.80
txMethod · 0.45
prev_outsMethod · 0.45

Tested by

no test coverage detected