pub enum ExitTransactionStatus {
Confirmed {
block_height: Option<u32>,
},
Ready,
WaitingForDependencies,
WaitingForTimelock {
spendable_at_height: Option<u32>,
},
Unverified,
}Expand description
Where a transaction in the exit path stands: on-chain, ready to send, or waiting for something.
Variants§
Confirmed
Confirmed in a block, at block_height where the chain service reported
one. It needs no action.
A relative csv_timelock_blocks counts from the height of the
transaction it spends, so this is what tells you when a child of this one
can go out, without fetching it again.
Ready
Not on-chain, and nothing is holding it back. Broadcast it, with its
cpfp_tx_hex where it has one.
WaitingForDependencies
A transaction in depends_on has yet to confirm. A relative timelock
only starts counting once it does.
WaitingForTimelock
Every input is confirmed, but a relative timelock has yet to mature.
spendable_at_height is the first block that can include this
transaction, and is unset when the height it counts from could not be
read from the chain.
Unverified
The on-chain status could not be determined (the chain service errored), which also leaves what it is waiting for unknown. Broadcasting may fail if a conflicting transaction already landed.
Trait Implementations§
Source§impl Clone for ExitTransactionStatus
impl Clone for ExitTransactionStatus
Source§fn clone(&self) -> ExitTransactionStatus
fn clone(&self) -> ExitTransactionStatus
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ExitTransactionStatus
impl Debug for ExitTransactionStatus
Source§impl<'de> Deserialize<'de> for ExitTransactionStatus
impl<'de> Deserialize<'de> for ExitTransactionStatus
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>,
Source§impl PartialEq for ExitTransactionStatus
impl PartialEq for ExitTransactionStatus
Source§impl Serialize for ExitTransactionStatus
impl Serialize for ExitTransactionStatus
impl Copy for ExitTransactionStatus
impl Eq for ExitTransactionStatus
impl StructuralPartialEq for ExitTransactionStatus
Auto Trait Implementations§
impl Freeze for ExitTransactionStatus
impl RefUnwindSafe for ExitTransactionStatus
impl Send for ExitTransactionStatus
impl Sync for ExitTransactionStatus
impl Unpin for ExitTransactionStatus
impl UnsafeUnpin for ExitTransactionStatus
impl UnwindSafe for ExitTransactionStatus
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§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