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: ChannelTypeFeatures,
}
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: ChannelTypeFeatures

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§

source§

impl ChannelTransactionParameters

source

pub fn is_populated(&self) -> bool

Whether the late bound parameters are populated.

source

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.

source

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§

source§

impl Clone for ChannelTransactionParameters

source§

fn clone(&self) -> ChannelTransactionParameters

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ChannelTransactionParameters

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Hash for ChannelTransactionParameters

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq for ChannelTransactionParameters

source§

fn eq(&self, other: &ChannelTransactionParameters) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Readable for ChannelTransactionParameters

source§

fn read<R: Read>(reader: &mut R) -> Result<Self, DecodeError>

Reads a Self in from the given Read.
source§

impl Writeable for ChannelTransactionParameters

source§

fn write<W: Writer>(&self, writer: &mut W) -> Result<(), Error>

Writes self out to the given Writer.
source§

fn encode(&self) -> Vec<u8>

Writes self out to a Vec<u8>.
source§

fn serialized_length(&self) -> usize

Gets the length of this object after it has been serialized. This can be overridden to optimize cases where we prepend an object with its length.
source§

impl Eq for ChannelTransactionParameters

source§

impl StructuralPartialEq for ChannelTransactionParameters

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> MaybeReadable for T
where T: Readable,

source§

fn read<R>(reader: &mut R) -> Result<Option<T>, DecodeError>
where R: Read,

Reads a Self in from the given Read.
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.