pub struct ReverseSwap { /* private fields */ }
Implementations§
source§impl ReverseSwap
impl ReverseSwap
sourcepub fn determine_clear_wallet_feasibility(&self) -> Result<RangeHit>
pub fn determine_clear_wallet_feasibility(&self) -> Result<RangeHit>
Check if clearing the wallet is feasible.
Meaning that the balance is within the range of what can be reverse-swapped.
Requires network: yes
sourcepub fn prepare_clear_wallet(&self) -> Result<ClearWalletInfo>
pub fn prepare_clear_wallet(&self) -> Result<ClearWalletInfo>
Prepares a reverse swap that sends all funds in LN channels. This is possible because the route to the swap service is known, so fees can be known in advance.
This can fail if the balance is either too low or too high for it to be reverse-swapped.
The method ReverseSwap::determine_clear_wallet_feasibility
can be used to check if the balance
is within the required range.
Requires network: yes
sourcepub fn clear_wallet(
&self,
clear_wallet_info: ClearWalletInfo,
destination: BitcoinAddressData,
) -> Result<()>
pub fn clear_wallet( &self, clear_wallet_info: ClearWalletInfo, destination: BitcoinAddressData, ) -> Result<()>
Starts a reverse swap that sends all funds in LN channels to the provided on-chain address.
Parameters:
clear_wallet_info
- An instance ofClearWalletInfo
obtained usingReverseSwap::prepare_clear_wallet
.destination
- An on-chain address data instance. Can be obtained usingLightningNode::decode_data
.
Requires network: yes
Auto Trait Implementations§
impl Freeze for ReverseSwap
impl !RefUnwindSafe for ReverseSwap
impl Send for ReverseSwap
impl Sync for ReverseSwap
impl Unpin for ReverseSwap
impl !UnwindSafe for ReverseSwap
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
§impl<T> Downcast for Twhere
T: AsAny + ?Sized,
impl<T> Downcast for Twhere
T: AsAny + ?Sized,
§fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
Forward to the method defined on the type
Any
.§fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
Forward to the method defined on the type
Any
.§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
Create a new handle for an Arc value Read more
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
Clone a handle Read more
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Consume a handle, getting back the initial
Arc<>
Read more§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>
Converts
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>
Converts
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>
Wrap the input message
T
in a tonic::Request