MCPcopy Index your code
hub / github.com/BitVM/BitVM / process_peg_outs

Method process_peg_outs

bridge/src/client/client.rs:828–870  ·  view source on GitHub ↗

TODO: handle internal errors

(&mut self)

Source from the content-addressed store, hash-verified

826
827 // TODO: handle internal errors
828 pub async fn process_peg_outs(&mut self) {
829 let peg_out_graphs = self.data().peg_out_graphs.clone();
830 for peg_out_graph in peg_out_graphs.iter() {
831 let status = peg_out_graph.operator_status(&self.esplora).await;
832 match status {
833 PegOutOperatorStatus::PegOutStartTimeAvailable => {
834 let _ = self.broadcast_start_time(peg_out_graph.id()).await;
835 }
836 PegOutOperatorStatus::PegOutPegOutConfirmAvailable => {
837 let _ = self.broadcast_peg_out_confirm(peg_out_graph.id()).await;
838 }
839 PegOutOperatorStatus::PegOutKickOff1Available => {
840 let _ = self.broadcast_kick_off_1(peg_out_graph.id()).await;
841 }
842 PegOutOperatorStatus::PegOutKickOff2Available => {
843 let _ = self.broadcast_kick_off_2(peg_out_graph.id()).await;
844 }
845 PegOutOperatorStatus::PegOutAssertInitialAvailable => {
846 let _ = self.broadcast_assert_initial(peg_out_graph.id()).await;
847 }
848 PegOutOperatorStatus::PegOutAssertCommit1Available => {
849 let _ = self
850 .broadcast_assert_commit_1(peg_out_graph.id(), &get_proof())
851 .await;
852 }
853 PegOutOperatorStatus::PegOutAssertCommit2Available => {
854 let _ = self
855 .broadcast_assert_commit_2(peg_out_graph.id(), &get_proof())
856 .await;
857 }
858 PegOutOperatorStatus::PegOutAssertFinalAvailable => {
859 let _ = self.broadcast_assert_final(peg_out_graph.id()).await;
860 }
861 PegOutOperatorStatus::PegOutTake1Available => {
862 let _ = self.broadcast_take_1(peg_out_graph.id()).await;
863 }
864 PegOutOperatorStatus::PegOutTake2Available => {
865 let _ = self.broadcast_take_2(peg_out_graph.id()).await;
866 }
867 _ => {}
868 }
869 }
870 }
871
872 async fn verifier_status(&self) {
873 if self.verifier_context.is_none() {

Callers 1

Calls 15

get_proofFunction · 0.85
cloneMethod · 0.80
dataMethod · 0.80
broadcast_start_timeMethod · 0.80
broadcast_kick_off_1Method · 0.80
broadcast_kick_off_2Method · 0.80
broadcast_take_1Method · 0.80

Tested by

no test coverage detected