OfferDlc

Struct OfferDlc 

Source
pub struct OfferDlc {
Show 16 fields pub protocol_version: u32, pub contract_flags: u8, pub chain_hash: [u8; 32], pub temporary_contract_id: [u8; 32], pub contract_info: ContractInfo, pub funding_pubkey: PublicKey, pub payout_spk: ScriptBuf, pub payout_serial_id: u64, pub offer_collateral: Amount, pub funding_inputs: Vec<FundingInput>, pub change_spk: ScriptBuf, pub change_serial_id: u64, pub fund_output_serial_id: u64, pub fee_rate_per_vb: u64, pub cet_locktime: u32, pub refund_locktime: u32,
}
Expand description

Contains information about a party wishing to enter into a DLC with another party. The contained information is sufficient for any other party to create a set of transactions representing the contract and its terms.

Fields§

§protocol_version: u32

The version of the protocol used by the peer.

§contract_flags: u8

Feature flags to be used for the offered contract.

§chain_hash: [u8; 32]

The identifier of the chain on which the contract will be settled.

§temporary_contract_id: [u8; 32]

Temporary contract id to identify the contract.

§contract_info: ContractInfo

Information about the contract event, payouts and oracles.

§funding_pubkey: PublicKey

The public key of the offerer to be used to lock the collateral.

§payout_spk: ScriptBuf

The SPK where the offerer will receive their payout.

§payout_serial_id: u64

Serial id to order CET outputs.

§offer_collateral: Amount

Collateral of the offer party.

§funding_inputs: Vec<FundingInput>

Inputs used by the offer party to fund the contract.

§change_spk: ScriptBuf

The SPK where the offer party will receive their change.

§change_serial_id: u64

Serial id to order funding transaction outputs.

§fund_output_serial_id: u64

Serial id to order funding transaction outputs.

§fee_rate_per_vb: u64

The fee rate to use to compute transaction fees for this contract.

§cet_locktime: u32

The lock time for the CETs.

§refund_locktime: u32

The lock time for the refund transactions.

Implementations§

Source§

impl OfferDlc

Source

pub fn get_total_collateral(&self) -> Amount

Returns the total collateral locked in the contract.

Source

pub fn validate<C: Verification>( &self, secp: &Secp256k1<C>, min_timeout_interval: u32, max_timeout_interval: u32, ) -> Result<(), Error>

Returns whether the message satisfies validity requirements.

Trait Implementations§

Source§

impl Clone for OfferDlc

Source§

fn clone(&self) -> OfferDlc

Returns a duplicate 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 OfferDlc

Source§

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

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

impl PartialEq for OfferDlc

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Readable for OfferDlc

Source§

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

Reads a Self in from the given Read.
Source§

impl Type for OfferDlc

Source§

fn type_id(&self) -> u16

Returns the type identifying the message payload.
Source§

impl Writeable for OfferDlc

Source§

fn write<W: Writer>(&self, w: &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 StructuralPartialEq for OfferDlc

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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,

Source§

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>,

Source§

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>,

Source§

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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V