Struct DelayedPaymentOutputDescriptor
pub struct DelayedPaymentOutputDescriptor {
pub outpoint: OutPoint,
pub per_commitment_point: PublicKey,
pub to_self_delay: u16,
pub output: TxOut,
pub revocation_pubkey: RevocationKey,
pub channel_keys_id: [u8; 32],
pub channel_value_satoshis: u64,
pub channel_transaction_parameters: Option<ChannelTransactionParameters>,
}Expand description
Information about a spendable output to a P2WSH script.
See SpendableOutputDescriptor::DelayedPaymentOutput for more details on how to spend this.
Fields§
§outpoint: OutPointThe outpoint which is spendable.
per_commitment_point: PublicKeyPer commitment point to derive the delayed payment key by key holder.
to_self_delay: u16The nSequence value which must be set in the spending input to satisfy the OP_CSV in
the witness_script.
output: TxOutThe output which is referenced by the given outpoint.
revocation_pubkey: RevocationKeyThe revocation point specific to the commitment transaction which was broadcast. Used to derive the witnessScript for this output.
channel_keys_id: [u8; 32]Arbitrary identification information returned by a call to ChannelSigner::channel_keys_id.
This may be useful in re-deriving keys used in the channel to spend the output.
channel_value_satoshis: u64The value of the channel which this output originated from, possibly indirectly.
channel_transaction_parameters: Option<ChannelTransactionParameters>The channel public keys and other parameters needed to generate a spending transaction or
to provide to a re-derived signer through ChannelSigner::provide_channel_parameters.
Added as optional, but always Some if the descriptor was produced in v0.0.123 or later.
Implementations§
§impl DelayedPaymentOutputDescriptor
impl DelayedPaymentOutputDescriptor
pub const MAX_WITNESS_LENGTH: u64 = 154u64
pub const MAX_WITNESS_LENGTH: u64 = 154u64
The maximum length a well-formed witness spending one of these should have. Note: If you have the grind_signatures feature enabled, this will be at least 1 byte shorter.
Trait Implementations§
§impl Clone for DelayedPaymentOutputDescriptor
impl Clone for DelayedPaymentOutputDescriptor
§fn clone(&self) -> DelayedPaymentOutputDescriptor
fn clone(&self) -> DelayedPaymentOutputDescriptor
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for DelayedPaymentOutputDescriptor
impl Debug for DelayedPaymentOutputDescriptor
§impl Hash for DelayedPaymentOutputDescriptor
impl Hash for DelayedPaymentOutputDescriptor
§impl PartialEq for DelayedPaymentOutputDescriptor
impl PartialEq for DelayedPaymentOutputDescriptor
§impl Readable for DelayedPaymentOutputDescriptor
impl Readable for DelayedPaymentOutputDescriptor
§fn read<R>(
reader: &mut R,
) -> Result<DelayedPaymentOutputDescriptor, DecodeError>where
R: Read,
fn read<R>(
reader: &mut R,
) -> Result<DelayedPaymentOutputDescriptor, DecodeError>where
R: Read,
Self in from the given Read.§impl Writeable for DelayedPaymentOutputDescriptor
impl Writeable for DelayedPaymentOutputDescriptor
impl Eq for DelayedPaymentOutputDescriptor
impl StructuralPartialEq for DelayedPaymentOutputDescriptor
Auto Trait Implementations§
impl Freeze for DelayedPaymentOutputDescriptor
impl RefUnwindSafe for DelayedPaymentOutputDescriptor
impl Send for DelayedPaymentOutputDescriptor
impl Sync for DelayedPaymentOutputDescriptor
impl Unpin for DelayedPaymentOutputDescriptor
impl UnwindSafe for DelayedPaymentOutputDescriptor
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
§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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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<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.§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> ⓘ
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