From 9b79ae3605d3deaa1a04076ae86530b8f84065c4 Mon Sep 17 00:00:00 2001 From: Alright Date: Wed, 2 Oct 2024 14:02:37 -0400 Subject: [PATCH] fix atomic_swap compilation - this file is likely to be fully refactored to reduce complexity --- src/types/atomic_swap.rs | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/types/atomic_swap.rs b/src/types/atomic_swap.rs index cb3fdf8..06d0603 100644 --- a/src/types/atomic_swap.rs +++ b/src/types/atomic_swap.rs @@ -319,10 +319,16 @@ pub struct AtomicSwapSuccess(SatisfiedPolicy); #[derive(Debug, Error)] enum AtomicSwapSuccessError { + #[error("invalid atomic swap success: {:?}, invalid signatures amount: {}", satisfied_policy, amount)] InvalidSignaturesAmount { satisfied_policy: SatisfiedPolicy, amount: usize }, + #[error("invalid atomic swap success: {:?}, invalid preimages amount: {}", satisfied_policy, amount)] InvalidPreimagesAmount { satisfied_policy: SatisfiedPolicy, amount: usize }, + #[error("invalid atomic swap success: {:?}, invalid policy variant", satisfied_policy)] InvalidSpendPolicyVariant { satisfied_policy: SatisfiedPolicy }, - AtomicSwapError(AtomicSwapError), + // #[error("invalid atomic swap success: {0}, atomic swap error")] + // AtomicSwapError(AtomicSwapError), + #[error("invalid atomic swap success, TODO remove this placeholder")] + PlaceHolder, } impl IsValidatedPolicy for AtomicSwapSuccess { @@ -348,13 +354,13 @@ impl IsValidatedPolicy for AtomicSwapSuccess { }); } - match satisfied_policy.policy { + match &satisfied_policy.policy { SpendPolicy::Threshold{ n: 1, of } if of.len() == 2 => { - HashLockPath::is_valid(&of[0]).map_err(AtomicSwapSuccessError::AtomicSwapError)?; - Opaque::is_valid(&of[1]).map_err(AtomicSwapSuccessError::AtomicSwapError)?; + HashLockPath::is_valid(&of[0]).map_err(|_| AtomicSwapSuccessError::PlaceHolder)?; + Opaque::is_valid(&of[1]).map_err(|_| AtomicSwapSuccessError::PlaceHolder)?; Ok(()) }, - _ => Err(AtomicSwapSuccessError::InvalidSpendPolicyVariant(satisfied_policy.clone())), + _ => Err(AtomicSwapSuccessError::InvalidSpendPolicyVariant{ satisfied_policy: satisfied_policy.clone()}), } } }