pub struct ChannelTransactionParameters {
pub holder_pubkeys: ChannelPublicKeys,
pub holder_selected_contest_delay: u16,
pub is_outbound_from_holder: bool,
pub counterparty_parameters: Option<CounterpartyChannelTransactionParameters>,
pub funding_outpoint: Option<OutPoint>,
pub channel_type_features: Features<ChannelTypeContext>,
}
Expand description
Per-channel data used to build transactions in conjunction with the per-commitment data (CommitmentTransaction). The fields are organized by holder/counterparty.
Normally, this is converted to the broadcaster/countersignatory-organized DirectedChannelTransactionParameters before use, via the as_holder_broadcastable and as_counterparty_broadcastable functions.
Fields§
§holder_pubkeys: ChannelPublicKeys
Holder public keys
holder_selected_contest_delay: u16
The contest delay selected by the holder, which applies to counterparty-broadcast transactions
is_outbound_from_holder: bool
Whether the holder is the initiator of this channel. This is an input to the commitment number obscure factor computation.
counterparty_parameters: Option<CounterpartyChannelTransactionParameters>
The late-bound counterparty channel transaction parameters. These parameters are populated at the point in the protocol where the counterparty provides them.
funding_outpoint: Option<OutPoint>
The late-bound funding outpoint
channel_type_features: Features<ChannelTypeContext>
This channel’s type, as negotiated during channel open. For old objects where this field wasn’t serialized, it will default to static_remote_key at deserialization.
Implementations§
§impl ChannelTransactionParameters
impl ChannelTransactionParameters
pub fn is_populated(&self) -> bool
pub fn is_populated(&self) -> bool
Whether the late bound parameters are populated.
pub fn as_holder_broadcastable(
&self,
) -> DirectedChannelTransactionParameters<'_>
pub fn as_holder_broadcastable( &self, ) -> DirectedChannelTransactionParameters<'_>
Convert the holder/counterparty parameters to broadcaster/countersignatory-organized parameters, given that the holder is the broadcaster.
self.is_populated() must be true before calling this function.
pub fn as_counterparty_broadcastable(
&self,
) -> DirectedChannelTransactionParameters<'_>
pub fn as_counterparty_broadcastable( &self, ) -> DirectedChannelTransactionParameters<'_>
Convert the holder/counterparty parameters to broadcaster/countersignatory-organized parameters, given that the counterparty is the broadcaster.
self.is_populated() must be true before calling this function.
Trait Implementations§
§impl Clone for ChannelTransactionParameters
impl Clone for ChannelTransactionParameters
§fn clone(&self) -> ChannelTransactionParameters
fn clone(&self) -> ChannelTransactionParameters
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for ChannelTransactionParameters
impl Debug for ChannelTransactionParameters
§impl Hash for ChannelTransactionParameters
impl Hash for ChannelTransactionParameters
§impl PartialEq for ChannelTransactionParameters
impl PartialEq for ChannelTransactionParameters
§impl Readable for ChannelTransactionParameters
impl Readable for ChannelTransactionParameters
§fn read<R>(reader: &mut R) -> Result<ChannelTransactionParameters, DecodeError>where
R: Read,
fn read<R>(reader: &mut R) -> Result<ChannelTransactionParameters, DecodeError>where
R: Read,
Self
in from the given Read
.§impl Writeable for ChannelTransactionParameters
impl Writeable for ChannelTransactionParameters
impl Eq for ChannelTransactionParameters
impl StructuralPartialEq for ChannelTransactionParameters
Auto Trait Implementations§
impl Freeze for ChannelTransactionParameters
impl RefUnwindSafe for ChannelTransactionParameters
impl Send for ChannelTransactionParameters
impl Sync for ChannelTransactionParameters
impl Unpin for ChannelTransactionParameters
impl UnwindSafe for ChannelTransactionParameters
Blanket Implementations§
§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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)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<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> 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