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

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

Associated Types

Loading content...

Required methods

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

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

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

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

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

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