[][src]Trait lnpbp::dbc::types::Container

pub trait Container: Sized {
    type Supplement;
    type Host;
    pub fn reconstruct(
        proof: &Proof,
        supplement: &Self::Supplement,
        host: &Self::Host
    ) -> Result<Self, Error>;
pub fn deconstruct(self) -> (Proof, Self::Supplement);
pub fn to_proof(&self) -> Proof;
pub fn into_proof(self) -> Proof; }

Associated Types

Loading content...

Required methods

pub fn reconstruct(
    proof: &Proof,
    supplement: &Self::Supplement,
    host: &Self::Host
) -> Result<Self, Error>
[src]

pub fn deconstruct(self) -> (Proof, Self::Supplement)[src]

pub fn to_proof(&self) -> Proof[src]

pub fn into_proof(self) -> Proof[src]

Loading content...

Implementors

impl Container for KeysetContainer[src]

type Supplement = Hash

Out supplement is a protocol-specific tag in its hashed form

type Host = Option<()>

Proof contains both original public key and all participating keys (inside it's script), so we don't need host here

pub fn to_proof(&self) -> Proof[src]

Important: this method should not be used. KeysetContainer does not support proof generation, use more advanced structures like LockScript container to generate the proof

pub fn into_proof(self) -> Proof[src]

Important: this method should not be used. KeysetContainer does not support proof generation, use more advanced structures like LockScript container to generate the proof

impl Container for LockscriptContainer[src]

type Supplement = Hash

Out supplement is a protocol-specific tag in its hashed form

type Host = Option<()>

impl Container for PubkeyContainer[src]

type Supplement = Hash

Out supplement is a protocol-specific tag in its hashed form

type Host = Option<()>

Our proof contains the host, so we don't need host here

impl Container for SpkContainer[src]

type Supplement = Hash

Out supplement is a protocol-specific tag in its hashed form

type Host = PubkeyScript

impl Container for TaprootContainer[src]

type Supplement = Hash

Out supplement is a protocol-specific tag in its hashed form

type Host = Option<()>

Our proof contains the host, so we don't need host here

impl Container for TxContainer[src]

type Supplement = TxSupplement

type Host = Transaction

impl Container for TxoutContainer[src]

type Supplement = Hash

Out supplement is a protocol-specific tag in its hashed form

type Host = TxOut

Loading content...