pub struct UnilateralExitResponse {
pub recoverable_value_sat: u64,
pub total_fee_sat: u64,
pub cpfp_fee_sat: u64,
pub fanout_fee_sat: u64,
pub sweep_fee_sat: u64,
pub leaves: Vec<UnilateralExitLeaf>,
pub transactions: Vec<UnilateralExitTransaction>,
pub funding_inputs: Vec<CpfpInput>,
}Expand description
Result of unilateral_exit: a cost summary plus the complete, signed exit
path.
Fields§
§recoverable_value_sat: u64Total value of the selected leaves, in satoshis.
total_fee_sat: u64The actual total on-chain fee the returned transactions pay at the requested rate, in satoshis. A resumed or partially-confirmed exit pays less because already-confirmed steps are not rebuilt.
The sum of the three components below, which say who pays what:
cpfp_fee_sat + fanout_fee_sat + sweep_fee_sat. The first two come from
your funding UTXOs, the third off the value being recovered.
cpfp_fee_sat: u64The part of total_fee_sat the CPFP children pay, funded by your UTXOs.
It does not reduce what the exit recovers.
fanout_fee_sat: u64The part of total_fee_sat the fan-out pays, funded by your UTXO. Zero
when this exit needed no fan-out, and when an earlier attempt’s fan-out
had already confirmed.
sweep_fee_sat: u64The part of total_fee_sat the sweep pays, taken from the value it
moves, so this is the one component subtracted from what reaches the
destination. Zero while no refund is on-chain yet and the set carries no
sweep.
leaves: Vec<UnilateralExitLeaf>§transactions: Vec<UnilateralExitTransaction>The full signed transaction set, in valid topological (broadcast) order with shared ancestors appearing once and the sweep last.
funding_inputs: Vec<CpfpInput>The funding UTXOs this exit was built from, as you supplied them. Hand them back when you build the exit again and they are followed to whatever they have since become, so an outpoint an earlier attempt already spent still funds the rest.
Trait Implementations§
Source§impl Clone for UnilateralExitResponse
impl Clone for UnilateralExitResponse
Source§fn clone(&self) -> UnilateralExitResponse
fn clone(&self) -> UnilateralExitResponse
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for UnilateralExitResponse
impl Debug for UnilateralExitResponse
Source§impl<'de> Deserialize<'de> for UnilateralExitResponse
impl<'de> Deserialize<'de> for UnilateralExitResponse
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for UnilateralExitResponse
impl RefUnwindSafe for UnilateralExitResponse
impl Send for UnilateralExitResponse
impl Sync for UnilateralExitResponse
impl Unpin for UnilateralExitResponse
impl UnsafeUnpin for UnilateralExitResponse
impl UnwindSafe for UnilateralExitResponse
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request