From: Alekos Filini Date: Tue, 15 Sep 2020 08:14:52 +0000 (+0200) Subject: Regenerate the docs with the right flags, fix README.md X-Git-Url: http://internal-gitweb-vhost/script/%22https:/struct.DecoderReader.html?a=commitdiff_plain;h=c18dd68c69ee7878bf8a40e53fcde5e746249551;p=bitcoindevkit.org Regenerate the docs with the right flags, fix README.md --- diff --git a/README.md b/README.md index b9f1348768..3acbd2eb43 100644 --- a/README.md +++ b/README.md @@ -23,5 +23,8 @@ the `bdk/target/doc` directory after running the below commands from the `bdk` p ``` cargo clean - cargo doc --no-deps + cargo +nightly rustdoc --features=compiler,electrum,esplora,compact_filters,key-value-db -- --cfg docsrs ``` + +A nightly toolchain is required because some cool features, like `intra_rustdoc_links` and `doc_cfg`, are still +unstable. diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/enum.CompactFiltersError.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/enum.CompactFiltersError.html index e4c41ded0b..03e77e6d1f 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/enum.CompactFiltersError.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/enum.CompactFiltersError.html @@ -13,44 +13,44 @@ BIP158(Error), Time(SystemTimeError), Global(Box<Error>), -}

An error that can occur during sync with a [CompactFiltersBlockchain]

+}
This is supported on feature="compact_filters" only.

An error that can occur during sync with a CompactFiltersBlockchain

Variants

-
InvalidResponse

A peer sent an invalid or unexpected response

-
InvalidHeaders

The headers returned are invalid

-
InvalidFilterHeader

The compact filter headers returned are invalid

-
InvalidFilter

The compact filter returned is invalid

-
MissingBlock

The peer is missing a block in the valid chain

-
DataCorruption

The data stored in the block filters storage are corrupted

-
NotConnected

A peer is not connected

-
Timeout

A peer took too long to reply to one of our messages

-
NoPeers

No peers have been specified

-
DB(Error)

Internal database error

-
IO(Error)

Internal I/O error

-
BIP158(Error)

Invalid BIP158 filter

-
Time(SystemTimeError)

Internal system time error

-
Global(Box<Error>)

Wrapper for [crate::error::Error]

-

Trait Implementations

impl Debug for CompactFiltersError[src]

impl Display for CompactFiltersError[src]

impl Error for CompactFiltersError[src]

impl From<CompactFiltersError> for Error[src]

impl From<Error> for CompactFiltersError[src]

impl From<Error> for CompactFiltersError[src]

impl From<Error> for CompactFiltersError[src]

impl From<Error> for CompactFiltersError[src]

impl From<SystemTimeError> for CompactFiltersError[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/index.html index 26e359d8ec..9a0f04a20e 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/index.html @@ -1,6 +1,6 @@ -bdk::blockchain::compact_filters - Rust

[][src]Module bdk::blockchain::compact_filters

Compact Filters

-

This module contains a multithreaded implementation of an [Blockchain] backend that -uses BIP157 (aka "Neutrino") to populate the wallet's database +bdk::blockchain::compact_filters - Rust

[][src]Module bdk::blockchain::compact_filters

This is supported on feature="compact_filters" only.

Compact Filters

+

This module contains a multithreaded implementation of an Blockchain backend that +uses BIP157 (aka "Neutrino") to populate the wallet's database by downloading compact filters from the P2P network.

Since there are currently very few peers "in the wild" that advertise the required service flag, this implementation requires that one or more known peers are provided by the user. @@ -23,9 +23,9 @@ desirable to use multiple threads at once to sync in parallel.

.collect::<Result<_, _>>()?; let blockchain = CompactFiltersBlockchain::new(peers, "./wallet-filters", Some(500_000))?;

Structs

-
CompactFiltersBlockchain

Structure implementing the required blockchain traits

-
Mempool

Container for unconfirmed, but valid Bitcoin transactions

-
Peer

A Bitcoin peer

+
CompactFiltersBlockchainfeature="compact_filters"

Structure implementing the required blockchain traits

+
Mempoolfeature="compact_filters"

Container for unconfirmed, but valid Bitcoin transactions

+
Peerfeature="compact_filters"

A Bitcoin peer

Enums

-
CompactFiltersError

An error that can occur during sync with a [CompactFiltersBlockchain]

+
CompactFiltersErrorfeature="compact_filters"

An error that can occur during sync with a CompactFiltersBlockchain

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/struct.CompactFiltersBlockchain.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/struct.CompactFiltersBlockchain.html index 26a60c6fc9..e66ceef644 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/struct.CompactFiltersBlockchain.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/struct.CompactFiltersBlockchain.html @@ -1,28 +1,28 @@ -bdk::blockchain::compact_filters::CompactFiltersBlockchain - Rust

[][src]Struct bdk::blockchain::compact_filters::CompactFiltersBlockchain

pub struct CompactFiltersBlockchain { /* fields omitted */ }

Structure implementing the required blockchain traits

+bdk::blockchain::compact_filters::CompactFiltersBlockchain - Rust

[][src]Struct bdk::blockchain::compact_filters::CompactFiltersBlockchain

pub struct CompactFiltersBlockchain { /* fields omitted */ }
This is supported on feature="compact_filters" only.

Structure implementing the required blockchain traits

Example

-

See the blockchain::compact_filters module for a usage example.

-

Implementations

impl CompactFiltersBlockchain[src]

pub fn new<P: AsRef<Path>>(
    peers: Vec<Peer>,
    storage_dir: P,
    skip_blocks: Option<usize>
) -> Result<Self, CompactFiltersError>
[src]

Construct a new instance given a list of peers, a path to store headers and block +

See the blockchain::compact_filters module for a usage example.

+

Implementations

impl CompactFiltersBlockchain[src]

pub fn new<P: AsRef<Path>>(
    peers: Vec<Peer>,
    storage_dir: P,
    skip_blocks: Option<usize>
) -> Result<Self, CompactFiltersError>
[src]

This is supported on feature="compact_filters" only.

Construct a new instance given a list of peers, a path to store headers and block filters downloaded during the sync and optionally a number of blocks to ignore starting from the genesis while scanning for the wallet's outputs.

-

For each [Peer] specified a new thread will be spawned to download and verify the filters +

For each Peer specified a new thread will be spawned to download and verify the filters in parallel. It's currently recommended to only connect to a single peer to avoid inconsistencies in the data returned, optionally with multiple connections in parallel to speed-up the sync process.

-

Trait Implementations

impl Blockchain for CompactFiltersBlockchain[src]

impl Debug for CompactFiltersBlockchain[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BlockchainMarker for T where
    T: Blockchain
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

Trait Implementations

impl Blockchain for CompactFiltersBlockchain[src]

impl Debug for CompactFiltersBlockchain[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BlockchainMarker for T where
    T: Blockchain
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/struct.Mempool.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/struct.Mempool.html index 40b0b89143..d7cf23d992 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/struct.Mempool.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/struct.Mempool.html @@ -1,21 +1,21 @@ -bdk::blockchain::compact_filters::Mempool - Rust

[][src]Struct bdk::blockchain::compact_filters::Mempool

pub struct Mempool { /* fields omitted */ }

Container for unconfirmed, but valid Bitcoin transactions

-

It is normally shared between [Peer]s with the use of [Arc], so that transactions are not +bdk::blockchain::compact_filters::Mempool - Rust

[][src]Struct bdk::blockchain::compact_filters::Mempool

pub struct Mempool { /* fields omitted */ }
This is supported on feature="compact_filters" only.

Container for unconfirmed, but valid Bitcoin transactions

+

It is normally shared between Peers with the use of Arc, so that transactions are not duplicated in memory.

-

Implementations

impl Mempool[src]

pub fn add_tx(&self, tx: Transaction)[src]

Add a transaction to the mempool

+

Implementations

impl Mempool[src]

pub fn add_tx(&self, tx: Transaction)[src]

This is supported on feature="compact_filters" only.

Add a transaction to the mempool

Note that this doesn't propagate the transaction to other -peers. To do that, broadcast should be used.

-

pub fn get_tx(&self, inventory: &Inventory) -> Option<Transaction>[src]

Look-up a transaction in the mempool given an [Inventory] request

-

pub fn has_tx(&self, txid: &Txid) -> bool[src]

Return whether or not the mempool contains a transaction with a given txid

-

pub fn iter_txs(&self) -> Vec<Transaction>[src]

Return the list of transactions contained in the mempool

-

Trait Implementations

impl Debug for Mempool[src]

impl Default for Mempool[src]

Auto Trait Implementations

impl RefUnwindSafe for Mempool

impl Send for Mempool

impl Sync for Mempool

impl Unpin for Mempool

impl UnwindSafe for Mempool

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +peers. To do that, broadcast should be used.

+

pub fn get_tx(&self, inventory: &Inventory) -> Option<Transaction>[src]

This is supported on feature="compact_filters" only.

Look-up a transaction in the mempool given an [Inventory] request

+

pub fn has_tx(&self, txid: &Txid) -> bool[src]

This is supported on feature="compact_filters" only.

Return whether or not the mempool contains a transaction with a given txid

+

pub fn iter_txs(&self) -> Vec<Transaction>[src]

This is supported on feature="compact_filters" only.

Return the list of transactions contained in the mempool

+

Trait Implementations

impl Debug for Mempool[src]

impl Default for Mempool[src]

Auto Trait Implementations

impl RefUnwindSafe for Mempool

impl Send for Mempool

impl Sync for Mempool

impl Unpin for Mempool

impl UnwindSafe for Mempool

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/struct.Peer.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/struct.Peer.html index b0ac7bbd7b..e870e68138 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/struct.Peer.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/compact_filters/struct.Peer.html @@ -1,25 +1,25 @@ -bdk::blockchain::compact_filters::Peer - Rust

[][src]Struct bdk::blockchain::compact_filters::Peer

pub struct Peer { /* fields omitted */ }

A Bitcoin peer

-

Implementations

impl Peer[src]

pub fn connect<A: ToSocketAddrs>(
    address: A,
    mempool: Arc<Mempool>,
    network: Network
) -> Result<Self, CompactFiltersError>
[src]

Connect to a peer over a plaintext TCP connection

+bdk::blockchain::compact_filters::Peer - Rust

[][src]Struct bdk::blockchain::compact_filters::Peer

pub struct Peer { /* fields omitted */ }
This is supported on feature="compact_filters" only.

A Bitcoin peer

+

Implementations

impl Peer[src]

pub fn connect<A: ToSocketAddrs>(
    address: A,
    mempool: Arc<Mempool>,
    network: Network
) -> Result<Self, CompactFiltersError>
[src]

This is supported on feature="compact_filters" only.

Connect to a peer over a plaintext TCP connection

This function internally spawns a new thread that will monitor incoming messages from the peer, and optionally reply to some of them transparently, like pings

-

pub fn connect_proxy<T: ToTargetAddr, P: ToSocketAddrs>(
    target: T,
    proxy: P,
    credentials: Option<(&str, &str)>,
    mempool: Arc<Mempool>,
    network: Network
) -> Result<Self, CompactFiltersError>
[src]

Connect to a peer through a SOCKS5 proxy, optionally by using some credentials, specified +

pub fn connect_proxy<T: ToTargetAddr, P: ToSocketAddrs>(
    target: T,
    proxy: P,
    credentials: Option<(&str, &str)>,
    mempool: Arc<Mempool>,
    network: Network
) -> Result<Self, CompactFiltersError>
[src]

This is supported on feature="compact_filters" only.

Connect to a peer through a SOCKS5 proxy, optionally by using some credentials, specified as a tuple of (username, password)

This function internally spawns a new thread that will monitor incoming messages from the peer, and optionally reply to some of them transparently, like pings

-

pub fn get_version(&self) -> &VersionMessage[src]

Return the [VersionMessage] sent by the peer

-

pub fn get_network(&self) -> Network[src]

Return the Bitcoin [Network] in use

-

pub fn get_mempool(&self) -> Arc<Mempool>[src]

Return the mempool used by this peer

-

pub fn is_connected(&self) -> bool[src]

Return whether or not the peer is still connected

-

pub fn send(&self, payload: NetworkMessage) -> Result<(), CompactFiltersError>[src]

Send a raw Bitcoin message to the peer

-

pub fn recv(
    &self,
    wait_for: &'static str,
    timeout: Option<Duration>
) -> Result<Option<NetworkMessage>, CompactFiltersError>
[src]

Waits for a specific incoming Bitcoin message, optionally with a timeout

-

Trait Implementations

impl Debug for Peer[src]

Auto Trait Implementations

impl !RefUnwindSafe for Peer

impl Send for Peer

impl Sync for Peer

impl Unpin for Peer

impl !UnwindSafe for Peer

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

pub fn get_version(&self) -> &VersionMessage[src]

This is supported on feature="compact_filters" only.

Return the [VersionMessage] sent by the peer

+

pub fn get_network(&self) -> Network[src]

This is supported on feature="compact_filters" only.

Return the Bitcoin [Network] in use

+

pub fn get_mempool(&self) -> Arc<Mempool>[src]

This is supported on feature="compact_filters" only.

Return the mempool used by this peer

+

pub fn is_connected(&self) -> bool[src]

This is supported on feature="compact_filters" only.

Return whether or not the peer is still connected

+

pub fn send(&self, payload: NetworkMessage) -> Result<(), CompactFiltersError>[src]

This is supported on feature="compact_filters" only.

Send a raw Bitcoin message to the peer

+

pub fn recv(
    &self,
    wait_for: &'static str,
    timeout: Option<Duration>
) -> Result<Option<NetworkMessage>, CompactFiltersError>
[src]

This is supported on feature="compact_filters" only.

Waits for a specific incoming Bitcoin message, optionally with a timeout

+

Trait Implementations

impl Debug for Peer[src]

Auto Trait Implementations

impl !RefUnwindSafe for Peer

impl Send for Peer

impl Sync for Peer

impl Unpin for Peer

impl !UnwindSafe for Peer

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/electrum/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/electrum/index.html index 6124b78e35..6284002c9b 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/electrum/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/electrum/index.html @@ -1,11 +1,11 @@ -bdk::blockchain::electrum - Rust

[][src]Module bdk::blockchain::electrum

Electrum

-

This module defines a [Blockchain] struct that wraps an [electrum_client::Client] -and implements the logic required to populate the wallet's database by +bdk::blockchain::electrum - Rust

[][src]Module bdk::blockchain::electrum

This is supported on feature="electrum" only.

Electrum

+

This module defines a Blockchain struct that wraps an [electrum_client::Client] +and implements the logic required to populate the wallet's database by querying the inner client.

Example

 let client = electrum_client::Client::new("ssl://electrum.blockstream.info:50002", None)?;
 let blockchain = ElectrumBlockchain::from(client);

Structs

-
ElectrumBlockchain

Wrapper over an Electrum Client that implements the required blockchain traits

+
ElectrumBlockchainfeature="electrum"

Wrapper over an Electrum Client that implements the required blockchain traits

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/electrum/struct.ElectrumBlockchain.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/electrum/struct.ElectrumBlockchain.html index c9382cd9ab..44ca3ba179 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/electrum/struct.ElectrumBlockchain.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/electrum/struct.ElectrumBlockchain.html @@ -1,21 +1,21 @@ -bdk::blockchain::electrum::ElectrumBlockchain - Rust

[][src]Struct bdk::blockchain::electrum::ElectrumBlockchain

pub struct ElectrumBlockchain(_);

Wrapper over an Electrum Client that implements the required blockchain traits

+bdk::blockchain::electrum::ElectrumBlockchain - Rust

[][src]Struct bdk::blockchain::electrum::ElectrumBlockchain

pub struct ElectrumBlockchain(_);
This is supported on feature="electrum" only.

Wrapper over an Electrum Client that implements the required blockchain traits

Example

-

See the blockchain::electrum module for a usage example.

-

Trait Implementations

impl Blockchain for ElectrumBlockchain[src]

impl From<Client> for ElectrumBlockchain[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BlockchainMarker for T where
    T: Blockchain
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

See the blockchain::electrum module for a usage example.

+

Trait Implementations

impl Blockchain for ElectrumBlockchain[src]

impl From<Client> for ElectrumBlockchain[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BlockchainMarker for T where
    T: Blockchain
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/enum.Capability.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/enum.Capability.html index 0e3b82edfa..2fc3bbd7d1 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/enum.Capability.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/enum.Capability.html @@ -2,31 +2,31 @@ FullHistory, GetAnyTx, AccurateFees, -}

Capabilities that can be supported by a [Blockchain] backend

+}

Capabilities that can be supported by a Blockchain backend

Variants

-
FullHistory

Can recover the full history of a wallet and not only the set of currently spendable UTXOs

-
GetAnyTx

Can fetch any historical transaction given its txid

-
AccurateFees

Can compute accurate fees for the transactions found during sync

-

Trait Implementations

impl Clone for Capability[src]

impl Copy for Capability[src]

impl Debug for Capability[src]

impl Eq for Capability[src]

impl Hash for Capability[src]

impl PartialEq<Capability> for Capability[src]

impl StructuralEq for Capability[src]

impl StructuralPartialEq for Capability[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/esplora/enum.EsploraError.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/esplora/enum.EsploraError.html index ac8df66950..f4e7f9664c 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/esplora/enum.EsploraError.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/esplora/enum.EsploraError.html @@ -1,34 +1,34 @@ bdk::blockchain::esplora::EsploraError - Rust

[][src]Enum bdk::blockchain::esplora::EsploraError

pub enum EsploraError {
-    Reqwest(Error),
+    Reqwest(Error),
     Parsing(ParseIntError),
     BitcoinEncoding(Error),
     TransactionNotFound(Txid),
-}

Errors that can happen during a sync with [EsploraBlockchain]

+}
This is supported on feature="esplora" only.

Errors that can happen during a sync with EsploraBlockchain

Variants

-
Reqwest(Error)

Error with the HTTP call

-
Parsing(ParseIntError)

Invalid number returned

-
BitcoinEncoding(Error)

Invalid Bitcoin data returned

-
TransactionNotFound(Txid)

Transaction not found

-

Trait Implementations

impl Debug for EsploraError[src]

impl Display for EsploraError[src]

impl Error for EsploraError[src]

\ No newline at end of file +

impl From<Error> for EsploraError[src]

impl From<Error> for EsploraError[src]

impl From<EsploraError> for Error[src]

impl From<ParseIntError> for EsploraError[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/esplora/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/esplora/index.html index 87c6703711..abb4d4d08a 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/esplora/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/esplora/index.html @@ -1,11 +1,11 @@ -bdk::blockchain::esplora - Rust

[][src]Module bdk::blockchain::esplora

Esplora

-

This module defines a [Blockchain] struct that can query an Esplora backend -populate the wallet's database by

+bdk::blockchain::esplora - Rust

[][src]Module bdk::blockchain::esplora

This is supported on feature="esplora" only.

Esplora

+

This module defines a Blockchain struct that can query an Esplora backend +populate the wallet's database by

Example

 let blockchain = EsploraBlockchain::new("https://blockstream.info/testnet/api");

Structs

-
EsploraBlockchain

Structure that implements the logic to sync with Esplora

+
EsploraBlockchainfeature="esplora"

Structure that implements the logic to sync with Esplora

Enums

-
EsploraError

Errors that can happen during a sync with [EsploraBlockchain]

+
EsploraErrorfeature="esplora"

Errors that can happen during a sync with EsploraBlockchain

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/esplora/struct.EsploraBlockchain.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/esplora/struct.EsploraBlockchain.html index 1e46bd99b8..e2a5d3c475 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/esplora/struct.EsploraBlockchain.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/esplora/struct.EsploraBlockchain.html @@ -1,22 +1,22 @@ -bdk::blockchain::esplora::EsploraBlockchain - Rust

[][src]Struct bdk::blockchain::esplora::EsploraBlockchain

pub struct EsploraBlockchain(_);

Structure that implements the logic to sync with Esplora

+bdk::blockchain::esplora::EsploraBlockchain - Rust

[][src]Struct bdk::blockchain::esplora::EsploraBlockchain

pub struct EsploraBlockchain(_);
This is supported on feature="esplora" only.

Structure that implements the logic to sync with Esplora

Example

-

See the blockchain::esplora module for a usage example.

-

Implementations

impl EsploraBlockchain[src]

pub fn new(base_url: &str) -> Self[src]

Create a new instance of the client from a base URL

-

Trait Implementations

impl Blockchain for EsploraBlockchain[src]

impl Debug for EsploraBlockchain[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BlockchainMarker for T where
    T: Blockchain
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

See the blockchain::esplora module for a usage example.

+

Implementations

impl EsploraBlockchain[src]

pub fn new(base_url: &str) -> Self[src]

This is supported on feature="esplora" only.

Create a new instance of the client from a base URL

+

Trait Implementations

impl Blockchain for EsploraBlockchain[src]

impl Debug for EsploraBlockchain[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BlockchainMarker for T where
    T: Blockchain
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/fn.log_progress.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/fn.log_progress.html index 7b9070a659..c9bf15bd7a 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/fn.log_progress.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/fn.log_progress.html @@ -1,2 +1,2 @@ -bdk::blockchain::log_progress - Rust

[][src]Function bdk::blockchain::log_progress

pub fn log_progress() -> LogProgress

Create a nwe instance of [LogProgress]

+bdk::blockchain::log_progress - Rust

[][src]Function bdk::blockchain::log_progress

pub fn log_progress() -> LogProgress

Create a nwe instance of LogProgress

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/fn.noop_progress.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/fn.noop_progress.html index d537afe53d..046b7d470f 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/fn.noop_progress.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/fn.noop_progress.html @@ -1,2 +1,2 @@ -bdk::blockchain::noop_progress - Rust

[][src]Function bdk::blockchain::noop_progress

pub fn noop_progress() -> NoopProgress

Create a new instance of [NoopProgress]

+bdk::blockchain::noop_progress - Rust

[][src]Function bdk::blockchain::noop_progress

pub fn noop_progress() -> NoopProgress

Create a new instance of NoopProgress

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/fn.progress.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/fn.progress.html index 8e6c0b5573..5070df1d52 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/fn.progress.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/fn.progress.html @@ -1,2 +1,2 @@ -bdk::blockchain::progress - Rust

[][src]Function bdk::blockchain::progress

pub fn progress() -> (Sender<ProgressData>, Receiver<ProgressData>)

Shortcut to create a [channel] (pair of [Sender] and [Receiver]) that can transport [ProgressData]

+bdk::blockchain::progress - Rust

[][src]Function bdk::blockchain::progress

pub fn progress() -> (Sender<ProgressData>, Receiver<ProgressData>)

Shortcut to create a channel (pair of Sender and Receiver) that can transport ProgressData

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/index.html index c9e114ee05..0d1ede0175 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/index.html @@ -1,28 +1,28 @@ bdk::blockchain - Rust

[][src]Module bdk::blockchain

Blockchain backends

This module provides the implementation of a few commonly-used backends like -Electrum, Esplora and -Compact Filters/Neutrino, along with a generalized trait -[Blockchain] that can be implemented to build customized backends.

+Electrum, Esplora and +Compact Filters/Neutrino, along with a generalized trait +Blockchain that can be implemented to build customized backends.

Re-exports

pub use self::electrum::ElectrumBlockchain;
pub use self::esplora::EsploraBlockchain;
pub use self::compact_filters::CompactFiltersBlockchain;

Modules

-
compact_filters

Compact Filters

-
electrum

Electrum

-
esplora

Esplora

+
compact_filtersfeature="compact_filters"

Compact Filters

+
electrumfeature="electrum"

Electrum

+
esplorafeature="esplora"

Esplora

Structs

-
LogProgress

Type that implements [Progress] and logs at level INFO every update received

-
NoopProgress

Type that implements [Progress] and drops every update received

-
OfflineBlockchain

Type that only implements [Blockchain] and is always "offline"

+
LogProgress

Type that implements Progress and logs at level INFO every update received

+
NoopProgress

Type that implements Progress and drops every update received

+
OfflineBlockchain

Type that only implements Blockchain and is always "offline"

Enums

-
Capability

Capabilities that can be supported by a [Blockchain] backend

+
Capability

Capabilities that can be supported by a Blockchain backend

Traits

Blockchain

Trait that defines the actions that must be supported by a blockchain backend

BlockchainMarker

Marker trait for a blockchain backend

-
Progress

Trait for types that can receive and process progress updates during [Blockchain::sync] and -[Blockchain::setup]

+
Progress

Trait for types that can receive and process progress updates during Blockchain::sync and +Blockchain::setup

Functions

-
log_progress

Create a nwe instance of [LogProgress]

-
noop_progress

Create a new instance of [NoopProgress]

-
progress

Shortcut to create a [channel] (pair of [Sender] and [Receiver]) that can transport [ProgressData]

+
log_progress

Create a nwe instance of LogProgress

+
noop_progress

Create a new instance of NoopProgress

+
progress

Shortcut to create a channel (pair of Sender and Receiver) that can transport ProgressData

Type Definitions

-
ProgressData

Data sent with a progress update over a [channel]

+
ProgressData

Data sent with a progress update over a channel

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/struct.LogProgress.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/struct.LogProgress.html index 551e5af3cf..90c9026c8b 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/struct.LogProgress.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/struct.LogProgress.html @@ -1,18 +1,18 @@ -bdk::blockchain::LogProgress - Rust

[][src]Struct bdk::blockchain::LogProgress

pub struct LogProgress;

Type that implements [Progress] and logs at level INFO every update received

-

Trait Implementations

impl Clone for LogProgress[src]

impl Progress for LogProgress[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/struct.NoopProgress.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/struct.NoopProgress.html index 258ebd5f60..14ff942c13 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/struct.NoopProgress.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/struct.NoopProgress.html @@ -1,18 +1,18 @@ -bdk::blockchain::NoopProgress - Rust

[][src]Struct bdk::blockchain::NoopProgress

pub struct NoopProgress;

Type that implements [Progress] and drops every update received

-

Trait Implementations

impl Clone for NoopProgress[src]

impl Progress for NoopProgress[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/struct.OfflineBlockchain.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/struct.OfflineBlockchain.html index ba777d9cbf..8a5fcd5f92 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/struct.OfflineBlockchain.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/struct.OfflineBlockchain.html @@ -1,11 +1,11 @@ -bdk::blockchain::OfflineBlockchain - Rust

[][src]Struct bdk::blockchain::OfflineBlockchain

pub struct OfflineBlockchain;

Type that only implements [Blockchain] and is always "offline"

-

Trait Implementations

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BlockchainMarker for T where
    T: Blockchain
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +bdk::blockchain::OfflineBlockchain - Rust

[][src]Struct bdk::blockchain::OfflineBlockchain

pub struct OfflineBlockchain;

Type that only implements Blockchain and is always "offline"

+

Trait Implementations

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BlockchainMarker for T where
    T: Blockchain
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/trait.Blockchain.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/trait.Blockchain.html index 77f53cc7bb..37b5fa8bce 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/trait.Blockchain.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/trait.Blockchain.html @@ -9,29 +9,29 @@ fn sync<D: BatchDatabase, P: 'static + Progress>(
        &self,
        stop_gap: Option<usize>,
        database: &mut D,
        progress_update: P
    ) -> Result<(), Error> { ... } }

Trait that defines the actions that must be supported by a blockchain backend

-

Required methods

fn get_capabilities(&self) -> HashSet<Capability>

Return the set of [Capability] supported by this backend

-

fn setup<D: BatchDatabase, P: 'static + Progress>(
    &self,
    stop_gap: Option<usize>,
    database: &mut D,
    progress_update: P
) -> Result<(), Error>

Setup the backend and populate the internal database for the first time

-

This method is the equivalent of [Blockchain::sync], but it's guaranteed to only be -called once, at the first Wallet::sync.

+

Required methods

fn get_capabilities(&self) -> HashSet<Capability>

Return the set of Capability supported by this backend

+

fn setup<D: BatchDatabase, P: 'static + Progress>(
    &self,
    stop_gap: Option<usize>,
    database: &mut D,
    progress_update: P
) -> Result<(), Error>

Setup the backend and populate the internal database for the first time

+

This method is the equivalent of Blockchain::sync, but it's guaranteed to only be +called once, at the first Wallet::sync.

The rationale behind the distinction between sync and setup is that some custom backends might need to perform specific actions only the first time they are synced.

For types that do not have that distinction, only this method can be implemented, since -[Blockchain::sync] defaults to calling this internally if not overridden.

-

fn get_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>

Fetch a transaction from the blockchain given its txid

-

fn broadcast(&self, tx: &Transaction) -> Result<(), Error>

Broadcast a transaction

-

fn get_height(&self) -> Result<u32, Error>

Return the current height

-

fn estimate_fee(&self, target: usize) -> Result<FeeRate, Error>

Estimate the fee rate required to confirm a transaction in a given target of blocks

+Blockchain::sync defaults to calling this internally if not overridden.

+

fn get_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>

Fetch a transaction from the blockchain given its txid

+

fn broadcast(&self, tx: &Transaction) -> Result<(), Error>

Broadcast a transaction

+

fn get_height(&self) -> Result<u32, Error>

Return the current height

+

fn estimate_fee(&self, target: usize) -> Result<FeeRate, Error>

Estimate the fee rate required to confirm a transaction in a given target of blocks

Loading content... -

Provided methods

fn sync<D: BatchDatabase, P: 'static + Progress>(
    &self,
    stop_gap: Option<usize>,
    database: &mut D,
    progress_update: P
) -> Result<(), Error>

Populate the internal database with transactions and UTXOs

-

If not overridden, it defaults to calling [Blockchain::setup] internally.

+

Provided methods

fn sync<D: BatchDatabase, P: 'static + Progress>(
    &self,
    stop_gap: Option<usize>,
    database: &mut D,
    progress_update: P
) -> Result<(), Error>

Populate the internal database with transactions and UTXOs

+

If not overridden, it defaults to calling Blockchain::setup internally.

This method should implement the logic required to iterate over the list of the wallet's -script_pubkeys using Database::iter_script_pubkeys and look for relevant transactions -in the blockchain to populate the database with BatchOperations::set_tx and -BatchOperations::set_utxo.

+script_pubkeys using Database::iter_script_pubkeys and look for relevant transactions +in the blockchain to populate the database with BatchOperations::set_tx and +BatchOperations::set_utxo.

This method should also take care of removing UTXOs that are seen as spent in the -blockchain, using BatchOperations::del_utxo.

+blockchain, using BatchOperations::del_utxo.

The progress_update object can be used to give the caller updates about the progress by using -[Progress::update].

+Progress::update.

Loading content... -

Implementations on Foreign Types

impl<T: Blockchain> Blockchain for Arc<T>[src]

Loading content... -

Implementors

impl Blockchain for CompactFiltersBlockchain[src]

impl Blockchain for ElectrumBlockchain[src]

impl Blockchain for EsploraBlockchain[src]

Loading content... \ No newline at end of file +

Implementations on Foreign Types

impl<T: Blockchain> Blockchain for Arc<T>[src]

Loading content... +

Implementors

impl Blockchain for CompactFiltersBlockchain[src]

impl Blockchain for ElectrumBlockchain[src]

impl Blockchain for EsploraBlockchain[src]

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/trait.BlockchainMarker.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/trait.BlockchainMarker.html index 86eea223b1..abd1997c9f 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/trait.BlockchainMarker.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/trait.BlockchainMarker.html @@ -1,12 +1,12 @@ bdk::blockchain::BlockchainMarker - Rust

[][src]Trait bdk::blockchain::BlockchainMarker

pub trait BlockchainMarker { }

Marker trait for a blockchain backend

This is a marker trait for blockchain types. It is automatically implemented for types that -implement [Blockchain], so as a user of the library you won't have to implement this +implement Blockchain, so as a user of the library you won't have to implement this manually.

Users of the library will probably never have to implement this trait manually, but they could still need to import it to define types and structs with generics; -Implementing only the marker trait is pointless, since [OfflineBlockchain] -already does that, and whenever [Blockchain] is implemented, the marker trait is also +Implementing only the marker trait is pointless, since OfflineBlockchain +already does that, and whenever Blockchain is implemented, the marker trait is also automatically implemented by the library.

-

Implementors

impl BlockchainMarker for OfflineBlockchain[src]

impl<T: Blockchain> BlockchainMarker for T[src]

The [BlockchainMarker] marker trait is automatically implemented for [Blockchain] types

+

Implementors

impl BlockchainMarker for OfflineBlockchain[src]

impl<T: Blockchain> BlockchainMarker for T[src]

The BlockchainMarker marker trait is automatically implemented for Blockchain types

Loading content...
\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/trait.Progress.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/trait.Progress.html index 29ffb95073..c5b883f49e 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/trait.Progress.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/trait.Progress.html @@ -1,11 +1,11 @@ bdk::blockchain::Progress - Rust

[][src]Trait bdk::blockchain::Progress

pub trait Progress: Send {
     fn update(
        &self,
        progress: f32,
        message: Option<String>
    ) -> Result<(), Error>; -}

Trait for types that can receive and process progress updates during [Blockchain::sync] and -[Blockchain::setup]

+}

Trait for types that can receive and process progress updates during Blockchain::sync and +Blockchain::setup

-

Required methods

fn update(&self, progress: f32, message: Option<String>) -> Result<(), Error>

Send a new progress update

+

Required methods

fn update(&self, progress: f32, message: Option<String>) -> Result<(), Error>

Send a new progress update

The progress value should be in the range 0.0 - 100.0, and the message value is an optional text message that can be displayed to the user.

Loading content... -

Implementations on Foreign Types

impl Progress for Sender<ProgressData>[src]

Loading content... -

Implementors

impl Progress for LogProgress[src]

impl Progress for NoopProgress[src]

Loading content...
\ No newline at end of file +

Implementations on Foreign Types

impl Progress for Sender<ProgressData>[src]

Loading content... +

Implementors

impl Progress for LogProgress[src]

impl Progress for NoopProgress[src]

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/type.ProgressData.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/type.ProgressData.html index 9bdf253623..ec3f541cb7 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/type.ProgressData.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/blockchain/type.ProgressData.html @@ -1,2 +1,2 @@ -bdk::blockchain::ProgressData - Rust

[][src]Type Definition bdk::blockchain::ProgressData

type ProgressData = (f32, Option<String>);

Data sent with a progress update over a [channel]

+bdk::blockchain::ProgressData - Rust

[][src]Type Definition bdk::blockchain::ProgressData

type ProgressData = (f32, Option<String>);

Data sent with a progress update over a channel

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/index.html index b82eb576f9..7d69c1a943 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/index.html @@ -1,6 +1,6 @@ bdk::database - Rust

[][src]Module bdk::database

Database types

This module provides the implementation of some defaults database types, along with traits that -can be implemented externally to let Wallets use customized databases.

+can be implemented externally to let Wallets use customized databases.

It's important to note that the databases defined here only contains "blockchain-related" data. They can be seen more as a cache than a critical piece of storage that contains secrets and keys.

diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/memory/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/memory/index.html index 71dd168af7..c30317bfb8 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/memory/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/memory/index.html @@ -1,6 +1,6 @@ bdk::database::memory - Rust

[][src]Module bdk::database::memory

In-memory ephemeral database

-

This module defines an in-memory database type called [MemoryDatabase] that is based on a -[BTreeMap].

+

This module defines an in-memory database type called MemoryDatabase that is based on a +BTreeMap.

Structs

MemoryDatabase

In-memory ephemeral database

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/memory/struct.MemoryDatabase.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/memory/struct.MemoryDatabase.html index 54af7606e0..f06b045d39 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/memory/struct.MemoryDatabase.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/memory/struct.MemoryDatabase.html @@ -3,43 +3,43 @@ a device, or on platforms that don't provide a filesystem, like wasm32.

Once it's dropped its content will be lost.

If you are looking for a permanent storage solution, you can try with the default key-value -database called [sled]. See the database module documentation for more defailts.

-

Implementations

impl MemoryDatabase[src]

pub fn new() -> Self[src]

Create a new empty database

-

Trait Implementations

impl BatchDatabase for MemoryDatabase[src]

type Batch = Self

Container for the operations

-

impl BatchOperations for MemoryDatabase[src]

impl Database for MemoryDatabase[src]

impl Debug for MemoryDatabase[src]

impl Default for MemoryDatabase[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +database called [sled]. See the database module documentation for more defailts.

+

Implementations

impl MemoryDatabase[src]

pub fn new() -> Self[src]

Create a new empty database

+

Trait Implementations

impl BatchDatabase for MemoryDatabase[src]

type Batch = Self

Container for the operations

+

impl BatchOperations for MemoryDatabase[src]

impl Database for MemoryDatabase[src]

impl Debug for MemoryDatabase[src]

impl Default for MemoryDatabase[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/trait.BatchDatabase.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/trait.BatchDatabase.html index 5af2c0e52b..051a61e18b 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/trait.BatchDatabase.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/trait.BatchDatabase.html @@ -5,10 +5,10 @@ }

Trait for a database that supports batch operations

This trait defines the methods to start and apply a batch of operations.

-

Associated Types

type Batch: BatchOperations

Container for the operations

+

Associated Types

type Batch: BatchOperations

Container for the operations

Loading content... -

Required methods

fn begin_batch(&self) -> Self::Batch

Create a new batch container

-

fn commit_batch(&mut self, batch: Self::Batch) -> Result<(), Error>

Consume and apply a batch of operations

+

Required methods

fn begin_batch(&self) -> Self::Batch

Create a new batch container

+

fn commit_batch(&mut self, batch: Self::Batch) -> Result<(), Error>

Consume and apply a batch of operations

Loading content... -

Implementations on Foreign Types

impl BatchDatabase for Tree[src]

type Batch = Batch

Loading content... -

Implementors

impl BatchDatabase for MemoryDatabase[src]

type Batch = Self

Loading content... \ No newline at end of file +

Implementations on Foreign Types

impl BatchDatabase for Tree[src]

type Batch = Batch

Loading content... +

Implementors

impl BatchDatabase for MemoryDatabase[src]

type Batch = Self

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/trait.BatchOperations.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/trait.BatchOperations.html index ced1c71908..4fc52b7d3b 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/trait.BatchOperations.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/trait.BatchOperations.html @@ -11,21 +11,21 @@
fn del_tx(
        &mut self,
        txid: &Txid,
        include_raw: bool
    ) -> Result<Option<TransactionDetails>, Error>;
fn del_last_index(
        &mut self,
        script_type: ScriptType
    ) -> Result<Option<u32>, Error>; }

Trait for operations that can be batched

-

This trait defines the list of operations that must be implemented on the [Database] type and -the [BatchDatabase::Batch] type.

+

This trait defines the list of operations that must be implemented on the Database type and +the BatchDatabase::Batch type.

-

Required methods

fn set_script_pubkey(
    &mut self,
    script: &Script,
    script_type: ScriptType,
    child: u32
) -> Result<(), Error>

Store a script_pubkey along with its script type and child number

-

fn set_utxo(&mut self, utxo: &UTXO) -> Result<(), Error>

Store a [UTXO]

-

fn set_raw_tx(&mut self, transaction: &Transaction) -> Result<(), Error>

Store a raw transaction

-

fn set_tx(&mut self, transaction: &TransactionDetails) -> Result<(), Error>

Store the metadata of a transaction

-

fn set_last_index(
    &mut self,
    script_type: ScriptType,
    value: u32
) -> Result<(), Error>

Store the last derivation index for a given script type

-

fn del_script_pubkey_from_path(
    &mut self,
    script_type: ScriptType,
    child: u32
) -> Result<Option<Script>, Error>

Delete a script_pubkey given the script type and its child number

-

fn del_path_from_script_pubkey(
    &mut self,
    script: &Script
) -> Result<Option<(ScriptType, u32)>, Error>

Delete the data related to a specific script_pubkey, meaning the script type and the child +

Required methods

fn set_script_pubkey(
    &mut self,
    script: &Script,
    script_type: ScriptType,
    child: u32
) -> Result<(), Error>

Store a script_pubkey along with its script type and child number

+

fn set_utxo(&mut self, utxo: &UTXO) -> Result<(), Error>

Store a UTXO

+

fn set_raw_tx(&mut self, transaction: &Transaction) -> Result<(), Error>

Store a raw transaction

+

fn set_tx(&mut self, transaction: &TransactionDetails) -> Result<(), Error>

Store the metadata of a transaction

+

fn set_last_index(
    &mut self,
    script_type: ScriptType,
    value: u32
) -> Result<(), Error>

Store the last derivation index for a given script type

+

fn del_script_pubkey_from_path(
    &mut self,
    script_type: ScriptType,
    child: u32
) -> Result<Option<Script>, Error>

Delete a script_pubkey given the script type and its child number

+

fn del_path_from_script_pubkey(
    &mut self,
    script: &Script
) -> Result<Option<(ScriptType, u32)>, Error>

Delete the data related to a specific script_pubkey, meaning the script type and the child number

-

fn del_utxo(&mut self, outpoint: &OutPoint) -> Result<Option<UTXO>, Error>

Delete a [UTXO] given its [OutPoint]

-

fn del_raw_tx(&mut self, txid: &Txid) -> Result<Option<Transaction>, Error>

Delete a raw transaction given its [Txid]

-

fn del_tx(
    &mut self,
    txid: &Txid,
    include_raw: bool
) -> Result<Option<TransactionDetails>, Error>

Delete the metadata of a transaction and optionally the raw transaction itself

-

fn del_last_index(
    &mut self,
    script_type: ScriptType
) -> Result<Option<u32>, Error>

Delete the last derivation index for a script type

+

fn del_utxo(&mut self, outpoint: &OutPoint) -> Result<Option<UTXO>, Error>

Delete a UTXO given its [OutPoint]

+

fn del_raw_tx(&mut self, txid: &Txid) -> Result<Option<Transaction>, Error>

Delete a raw transaction given its [Txid]

+

fn del_tx(
    &mut self,
    txid: &Txid,
    include_raw: bool
) -> Result<Option<TransactionDetails>, Error>

Delete the metadata of a transaction and optionally the raw transaction itself

+

fn del_last_index(
    &mut self,
    script_type: ScriptType
) -> Result<Option<u32>, Error>

Delete the last derivation index for a script type

Loading content... -

Implementations on Foreign Types

impl BatchOperations for Tree[src]

impl BatchOperations for Batch[src]

Loading content... -

Implementors

impl BatchOperations for MemoryDatabase[src]

Loading content... \ No newline at end of file +

Implementations on Foreign Types

impl BatchOperations for Tree[src]

impl BatchOperations for Batch[src]

Loading content... +

Implementors

impl BatchOperations for MemoryDatabase[src]

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/trait.Database.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/trait.Database.html index 132165ada4..05be68c384 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/trait.Database.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/database/trait.Database.html @@ -14,22 +14,22 @@ }

Trait for reading data from a database

This traits defines the operations that can be used to read data out of a database

-

Required methods

fn check_descriptor_checksum<B: AsRef<[u8]>>(
    &mut self,
    script_type: ScriptType,
    bytes: B
) -> Result<(), Error>

Read and checks the descriptor checksum for a given script type

-

Should return Error::ChecksumMismatch if the +

Required methods

fn check_descriptor_checksum<B: AsRef<[u8]>>(
    &mut self,
    script_type: ScriptType,
    bytes: B
) -> Result<(), Error>

Read and checks the descriptor checksum for a given script type

+

Should return Error::ChecksumMismatch if the checksum doesn't match. If there's no checksum in the database, simply store it for the next time.

-

fn iter_script_pubkeys(
    &self,
    script_type: Option<ScriptType>
) -> Result<Vec<Script>, Error>

Return the list of script_pubkeys

-

fn iter_utxos(&self) -> Result<Vec<UTXO>, Error>

Return the list of [UTXO]s

-

fn iter_raw_txs(&self) -> Result<Vec<Transaction>, Error>

Return the list of raw transactions

-

fn iter_txs(&self, include_raw: bool) -> Result<Vec<TransactionDetails>, Error>

Return the list of transactions metadata

-

fn get_script_pubkey_from_path(
    &self,
    script_type: ScriptType,
    child: u32
) -> Result<Option<Script>, Error>

Fetch a script_pubkey given the script type and child number

-

fn get_path_from_script_pubkey(
    &self,
    script: &Script
) -> Result<Option<(ScriptType, u32)>, Error>

Fetch the script type and child number of a given script_pubkey

-

fn get_utxo(&self, outpoint: &OutPoint) -> Result<Option<UTXO>, Error>

Fetch a [UTXO] given its [OutPoint]

-

fn get_raw_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>

Fetch a raw transaction given its [Txid]

-

fn get_tx(
    &self,
    txid: &Txid,
    include_raw: bool
) -> Result<Option<TransactionDetails>, Error>

Fetch the transaction metadata and optionally also the raw transaction

-

fn get_last_index(&self, script_type: ScriptType) -> Result<Option<u32>, Error>

Return the last defivation index for a script type

-

fn increment_last_index(
    &mut self,
    script_type: ScriptType
) -> Result<u32, Error>

Increment the last derivation index for a script type and returns it

+

fn iter_script_pubkeys(
    &self,
    script_type: Option<ScriptType>
) -> Result<Vec<Script>, Error>

Return the list of script_pubkeys

+

fn iter_utxos(&self) -> Result<Vec<UTXO>, Error>

Return the list of UTXOs

+

fn iter_raw_txs(&self) -> Result<Vec<Transaction>, Error>

Return the list of raw transactions

+

fn iter_txs(&self, include_raw: bool) -> Result<Vec<TransactionDetails>, Error>

Return the list of transactions metadata

+

fn get_script_pubkey_from_path(
    &self,
    script_type: ScriptType,
    child: u32
) -> Result<Option<Script>, Error>

Fetch a script_pubkey given the script type and child number

+

fn get_path_from_script_pubkey(
    &self,
    script: &Script
) -> Result<Option<(ScriptType, u32)>, Error>

Fetch the script type and child number of a given script_pubkey

+

fn get_utxo(&self, outpoint: &OutPoint) -> Result<Option<UTXO>, Error>

Fetch a UTXO given its [OutPoint]

+

fn get_raw_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>

Fetch a raw transaction given its [Txid]

+

fn get_tx(
    &self,
    txid: &Txid,
    include_raw: bool
) -> Result<Option<TransactionDetails>, Error>

Fetch the transaction metadata and optionally also the raw transaction

+

fn get_last_index(&self, script_type: ScriptType) -> Result<Option<u32>, Error>

Return the last defivation index for a script type

+

fn increment_last_index(
    &mut self,
    script_type: ScriptType
) -> Result<u32, Error>

Increment the last derivation index for a script type and returns it

It should insert and return 0 if not present in the database

Loading content... -

Implementations on Foreign Types

impl Database for Tree[src]

Loading content... -

Implementors

impl Database for MemoryDatabase[src]

Loading content... \ No newline at end of file +

Implementations on Foreign Types

impl Database for Tree[src]

Loading content... +

Implementors

impl Database for MemoryDatabase[src]

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Descriptor.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Descriptor.html index fae819031a..f94eab51f0 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Descriptor.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Descriptor.html @@ -10,71 +10,71 @@ }

Script descriptor

Variants

-
Bare(Miniscript<Pk, Legacy>)

A raw scriptpubkey (including pay-to-pubkey) under Legacy context

-
Pk(Pk)

Pay-to-Pubkey

-
Pkh(Pk)

Pay-to-PubKey-Hash

-
Wpkh(Pk)

Pay-to-Witness-PubKey-Hash

-
ShWpkh(Pk)

Pay-to-Witness-PubKey-Hash inside P2SH

-

Pay-to-ScriptHash with Legacy context

-

Pay-to-Witness-ScriptHash with Segwitv0 context

-
ShWsh(Miniscript<Pk, Segwitv0>)

P2SH-P2WSH with Segwitv0 context

-

Implementations

impl<Pk> Descriptor<Pk> where
    Pk: MiniscriptKey

pub fn translate_pk<Fpk, Fpkh, Q, E>(
    &self,
    translatefpk: Fpk,
    translatefpkh: Fpkh
) -> Result<Descriptor<Q>, E> where
    Fpk: FnMut(&Pk) -> Result<Q, E>,
    Fpkh: FnMut(&<Pk as MiniscriptKey>::Hash) -> Result<<Q as MiniscriptKey>::Hash, E>,
    Q: MiniscriptKey

Convert a descriptor using abstract keys to one using specific keys +

Bare(Miniscript<Pk, Legacy>)

A raw scriptpubkey (including pay-to-pubkey) under Legacy context

+
Pk(Pk)

Pay-to-Pubkey

+
Pkh(Pk)

Pay-to-PubKey-Hash

+
Wpkh(Pk)

Pay-to-Witness-PubKey-Hash

+
ShWpkh(Pk)

Pay-to-Witness-PubKey-Hash inside P2SH

+

Pay-to-ScriptHash with Legacy context

+

Pay-to-Witness-ScriptHash with Segwitv0 context

+
ShWsh(Miniscript<Pk, Segwitv0>)

P2SH-P2WSH with Segwitv0 context

+

Implementations

impl<Pk> Descriptor<Pk> where
    Pk: MiniscriptKey

pub fn translate_pk<Fpk, Fpkh, Q, E>(
    &self,
    translatefpk: Fpk,
    translatefpkh: Fpkh
) -> Result<Descriptor<Q>, E> where
    Fpk: FnMut(&Pk) -> Result<Q, E>,
    Fpkh: FnMut(&<Pk as MiniscriptKey>::Hash) -> Result<<Q as MiniscriptKey>::Hash, E>,
    Q: MiniscriptKey

Convert a descriptor using abstract keys to one using specific keys This will panic if translatefpk returns an uncompressed key when converting to a Segwit descriptor. To prevent this panic, ensure translatefpk returns an error in this case instead.

-

impl<Pk> Descriptor<Pk> where
    Pk: MiniscriptKey + ToPublicKey

pub fn address(&self, network: Network) -> Option<Address>

Computes the Bitcoin address of the descriptor, if one exists

-

pub fn script_pubkey(&self) -> Script

Computes the scriptpubkey of the descriptor

-

pub fn unsigned_script_sig(&self) -> Script

Computes the scriptSig that will be in place for an unsigned +

impl<Pk> Descriptor<Pk> where
    Pk: MiniscriptKey + ToPublicKey

pub fn address(&self, network: Network) -> Option<Address>

Computes the Bitcoin address of the descriptor, if one exists

+

pub fn script_pubkey(&self) -> Script

Computes the scriptpubkey of the descriptor

+

pub fn unsigned_script_sig(&self) -> Script

Computes the scriptSig that will be in place for an unsigned input spending an output with this descriptor. For pre-segwit descriptors, which use the scriptSig for signatures, this returns the empty script.

This is used in Segwit transactions to produce an unsigned transaction whose txid will not change during signing (since only the witness data will change).

-

pub fn witness_script(&self) -> Script

Computes the "witness script" of the descriptor, i.e. the underlying +

pub fn witness_script(&self) -> Script

Computes the "witness script" of the descriptor, i.e. the underlying script before any hashing is done. For Bare, Pkh and Wpkh this is the scriptPubkey; for ShWpkh and Sh this is the redeemScript; for the others it is the witness script.

-

pub fn satisfy<S>(&self, txin: &mut TxIn, satisfier: S) -> Result<(), Error> where
    S: Satisfier<Pk>, 

Attempts to produce a satisfying witness and scriptSig to spend an +

pub fn satisfy<S>(&self, txin: &mut TxIn, satisfier: S) -> Result<(), Error> where
    S: Satisfier<Pk>, 

Attempts to produce a satisfying witness and scriptSig to spend an output controlled by the given descriptor; add the data to a given TxIn output.

-

pub fn max_satisfaction_weight(&self) -> usize

Computes an upper bound on the weight of a satisfying witness to the +

pub fn max_satisfaction_weight(&self) -> usize

Computes an upper bound on the weight of a satisfying witness to the transaction. Assumes all signatures are 73 bytes, including push opcode and sighash suffix. Includes the weight of the VarInts encoding the scriptSig and witness stack length.

-

impl Descriptor<DescriptorPublicKey>

pub fn derive(&self, path: &[ChildNumber]) -> Descriptor<DescriptorPublicKey>

Derives all wildcard keys in the descriptor using the supplied path

-

pub fn parse_secret(
    s: &str
) -> Result<(Descriptor<DescriptorPublicKey>, HashMap<DescriptorPublicKey, DescriptorSecretKey, RandomState>), Error>

pub fn to_string_with_secret(
    &self,
    key_map: &HashMap<DescriptorPublicKey, DescriptorSecretKey, RandomState>
) -> String

Trait Implementations

impl<Pk> Clone for Descriptor<Pk> where
    Pk: MiniscriptKey + Clone

impl<Pk> Debug for Descriptor<Pk> where
    Pk: MiniscriptKey

impl<Pk> Display for Descriptor<Pk> where
    Pk: MiniscriptKey

impl<Pk> Eq for Descriptor<Pk> where
    Pk: MiniscriptKey + Eq

impl ExtractPolicy for Descriptor<DescriptorPublicKey>[src]

impl<Pk> FromStr for Descriptor<Pk> where
    Pk: MiniscriptKey,
    <Pk as FromStr>::Err: ToString,
    <<Pk as MiniscriptKey>::Hash as FromStr>::Err: ToString

type Err = Error

The associated error which can be returned from parsing.

-

impl<Pk> FromTree for Descriptor<Pk> where
    Pk: MiniscriptKey,
    <Pk as FromStr>::Err: ToString,
    <<Pk as MiniscriptKey>::Hash as FromStr>::Err: ToString

fn from_tree(top: &Tree) -> Result<Descriptor<Pk>, Error>

Parse an expression tree into a descriptor

-

impl<Pk> Liftable<Pk> for Descriptor<Pk> where
    Pk: MiniscriptKey

impl<Pk> Ord for Descriptor<Pk> where
    Pk: MiniscriptKey + Ord

impl<Pk> PartialEq<Descriptor<Pk>> for Descriptor<Pk> where
    Pk: MiniscriptKey + PartialEq<Pk>, 

impl<Pk> PartialOrd<Descriptor<Pk>> for Descriptor<Pk> where
    Pk: MiniscriptKey + PartialOrd<Pk>, 

impl<Pk> StructuralEq for Descriptor<Pk> where
    Pk: MiniscriptKey

impl<Pk> StructuralPartialEq for Descriptor<Pk> where
    Pk: MiniscriptKey

Auto Trait Implementations

impl<Pk> RefUnwindSafe for Descriptor<Pk> where
    Pk: RefUnwindSafe,
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe

impl<Pk> Send for Descriptor<Pk> where
    Pk: Send + Sync,
    <Pk as MiniscriptKey>::Hash: Send + Sync

impl<Pk> Sync for Descriptor<Pk> where
    Pk: Send + Sync,
    <Pk as MiniscriptKey>::Hash: Send + Sync

impl<Pk> Unpin for Descriptor<Pk> where
    Pk: Unpin,
    <Pk as MiniscriptKey>::Hash: Unpin

impl<Pk> UnwindSafe for Descriptor<Pk> where
    Pk: RefUnwindSafe + UnwindSafe,
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe + UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl Descriptor<DescriptorPublicKey>

pub fn derive(&self, path: &[ChildNumber]) -> Descriptor<DescriptorPublicKey>

Derives all wildcard keys in the descriptor using the supplied path

+

pub fn parse_secret(
    s: &str
) -> Result<(Descriptor<DescriptorPublicKey>, HashMap<DescriptorPublicKey, DescriptorSecretKey, RandomState>), Error>

pub fn to_string_with_secret(
    &self,
    key_map: &HashMap<DescriptorPublicKey, DescriptorSecretKey, RandomState>
) -> String

Trait Implementations

impl<Pk> Clone for Descriptor<Pk> where
    Pk: MiniscriptKey + Clone

impl<Pk> Debug for Descriptor<Pk> where
    Pk: MiniscriptKey

impl<Pk> Display for Descriptor<Pk> where
    Pk: MiniscriptKey

impl<Pk> Eq for Descriptor<Pk> where
    Pk: MiniscriptKey + Eq

impl ExtractPolicy for Descriptor<DescriptorPublicKey>[src]

impl<Pk> FromStr for Descriptor<Pk> where
    Pk: MiniscriptKey,
    <Pk as FromStr>::Err: ToString,
    <<Pk as MiniscriptKey>::Hash as FromStr>::Err: ToString

type Err = Error

The associated error which can be returned from parsing.

+

impl<Pk> FromTree for Descriptor<Pk> where
    Pk: MiniscriptKey,
    <Pk as FromStr>::Err: ToString,
    <<Pk as MiniscriptKey>::Hash as FromStr>::Err: ToString

fn from_tree(top: &Tree) -> Result<Descriptor<Pk>, Error>

Parse an expression tree into a descriptor

+

impl<Pk> Liftable<Pk> for Descriptor<Pk> where
    Pk: MiniscriptKey

impl<Pk> Ord for Descriptor<Pk> where
    Pk: MiniscriptKey + Ord

impl<Pk> PartialEq<Descriptor<Pk>> for Descriptor<Pk> where
    Pk: MiniscriptKey + PartialEq<Pk>, 

impl<Pk> PartialOrd<Descriptor<Pk>> for Descriptor<Pk> where
    Pk: MiniscriptKey + PartialOrd<Pk>, 

impl<Pk> StructuralEq for Descriptor<Pk> where
    Pk: MiniscriptKey

impl<Pk> StructuralPartialEq for Descriptor<Pk> where
    Pk: MiniscriptKey

Auto Trait Implementations

impl<Pk> RefUnwindSafe for Descriptor<Pk> where
    Pk: RefUnwindSafe,
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe

impl<Pk> Send for Descriptor<Pk> where
    Pk: Send + Sync,
    <Pk as MiniscriptKey>::Hash: Send + Sync

impl<Pk> Sync for Descriptor<Pk> where
    Pk: Send + Sync,
    <Pk as MiniscriptKey>::Hash: Send + Sync

impl<Pk> Unpin for Descriptor<Pk> where
    Pk: Unpin,
    <Pk as MiniscriptKey>::Hash: Unpin

impl<Pk> UnwindSafe for Descriptor<Pk> where
    Pk: RefUnwindSafe + UnwindSafe,
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe + UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

+

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Legacy.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Legacy.html index 498794d39a..bba267f6ac 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Legacy.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Legacy.html @@ -1,32 +1,32 @@ bdk::descriptor::Legacy - Rust

[]Enum bdk::descriptor::Legacy

pub enum Legacy {}

Legacy ScriptContext

-

Trait Implementations

impl Clone for Legacy

impl Debug for Legacy

impl Eq for Legacy

impl Ord for Legacy

impl PartialEq<Legacy> for Legacy

impl PartialOrd<Legacy> for Legacy

impl ScriptContext for Legacy

impl StructuralEq for Legacy

impl StructuralPartialEq for Legacy

Auto Trait Implementations

impl RefUnwindSafe for Legacy

impl Send for Legacy

impl Sync for Legacy

impl Unpin for Legacy

impl UnwindSafe for Legacy

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-
\ No newline at end of file +

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Segwitv0.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Segwitv0.html index 49880c3bef..5011335983 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Segwitv0.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Segwitv0.html @@ -1,32 +1,32 @@ bdk::descriptor::Segwitv0 - Rust

[]Enum bdk::descriptor::Segwitv0

pub enum Segwitv0 {}

Segwitv0 ScriptContext

-

Trait Implementations

impl Clone for Segwitv0

impl Debug for Segwitv0

impl Eq for Segwitv0

impl Ord for Segwitv0

impl PartialEq<Segwitv0> for Segwitv0

impl PartialOrd<Segwitv0> for Segwitv0

impl ScriptContext for Segwitv0

impl StructuralEq for Segwitv0

impl StructuralPartialEq for Segwitv0

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-
\ No newline at end of file +

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Terminal.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Terminal.html index 7a18f3a4eb..123dafd5f4 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Terminal.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/enum.Terminal.html @@ -28,58 +28,58 @@ }

All AST elements

Variants

-
True

1

-
False

0

-
PkK(Pk)

<key>

-
PkH(<Pk as MiniscriptKey>::Hash)

DUP HASH160 <keyhash> EQUALVERIFY

-
After(u32)

n CHECKLOCKTIMEVERIFY

-
Older(u32)

n CHECKSEQUENCEVERIFY

-
Sha256(Hash)

SIZE 32 EQUALVERIFY SHA256 <hash> EQUAL

-
Hash256(Hash)

SIZE 32 EQUALVERIFY HASH256 <hash> EQUAL

-
Ripemd160(Hash)

SIZE 32 EQUALVERIFY RIPEMD160 <hash> EQUAL

-
Hash160(Hash)

SIZE 32 EQUALVERIFY HASH160 <hash> EQUAL

-
Alt(Arc<Miniscript<Pk, Ctx>>)

TOALTSTACK [E] FROMALTSTACK

-
Swap(Arc<Miniscript<Pk, Ctx>>)

SWAP [E1]

-
Check(Arc<Miniscript<Pk, Ctx>>)

[Kt]/[Ke] CHECKSIG

-
DupIf(Arc<Miniscript<Pk, Ctx>>)

DUP IF [V] ENDIF

-
Verify(Arc<Miniscript<Pk, Ctx>>)

[T] VERIFY

-
NonZero(Arc<Miniscript<Pk, Ctx>>)

SIZE 0NOTEQUAL IF [Fn] ENDIF

-
ZeroNotEqual(Arc<Miniscript<Pk, Ctx>>)

[X] 0NOTEQUAL

-
AndV(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

[V] [T]/[V]/[F]/[Kt]

-
AndB(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

[E] [W] BOOLAND

-
AndOr(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

[various] NOTIF [various] ELSE [various] ENDIF

-
OrB(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

[E] [W] BOOLOR

-
OrD(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

[E] IFDUP NOTIF [T]/[E] ENDIF

-
OrC(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

[E] NOTIF [V] ENDIF

-
OrI(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

IF [various] ELSE [various] ENDIF

-
Thresh(usizeVec<Arc<Miniscript<Pk, Ctx>>>)

[E] ([W] ADD)* k EQUAL

-
Multi(usizeVec<Pk>)

k ()* n CHECKMULTISIG

-

Implementations

impl<Pk, Ctx> Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

pub fn translate_pk<FPk, FPkh, Q, Error>(
    &self,
    translatefpk: &mut FPk,
    translatefpkh: &mut FPkh
) -> Result<Terminal<Q, Ctx>, Error> where
    FPk: FnMut(&Pk) -> Result<Q, Error>,
    FPkh: FnMut(&<Pk as MiniscriptKey>::Hash) -> Result<<Q as MiniscriptKey>::Hash, Error>,
    Q: MiniscriptKey

Convert an AST element with one public key type to one of another +

True

1

+
False

0

+
PkK(Pk)

<key>

+
PkH(<Pk as MiniscriptKey>::Hash)

DUP HASH160 <keyhash> EQUALVERIFY

+
After(u32)

n CHECKLOCKTIMEVERIFY

+
Older(u32)

n CHECKSEQUENCEVERIFY

+
Sha256(Hash)

SIZE 32 EQUALVERIFY SHA256 <hash> EQUAL

+
Hash256(Hash)

SIZE 32 EQUALVERIFY HASH256 <hash> EQUAL

+
Ripemd160(Hash)

SIZE 32 EQUALVERIFY RIPEMD160 <hash> EQUAL

+
Hash160(Hash)

SIZE 32 EQUALVERIFY HASH160 <hash> EQUAL

+
Alt(Arc<Miniscript<Pk, Ctx>>)

TOALTSTACK [E] FROMALTSTACK

+
Swap(Arc<Miniscript<Pk, Ctx>>)

SWAP [E1]

+
Check(Arc<Miniscript<Pk, Ctx>>)

[Kt]/[Ke] CHECKSIG

+
DupIf(Arc<Miniscript<Pk, Ctx>>)

DUP IF [V] ENDIF

+
Verify(Arc<Miniscript<Pk, Ctx>>)

[T] VERIFY

+
NonZero(Arc<Miniscript<Pk, Ctx>>)

SIZE 0NOTEQUAL IF Fn ENDIF

+
ZeroNotEqual(Arc<Miniscript<Pk, Ctx>>)

[X] 0NOTEQUAL

+
AndV(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

[V] [T]/[V]/[F]/[Kt]

+
AndB(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

[E] [W] BOOLAND

+
AndOr(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

[various] NOTIF [various] ELSE [various] ENDIF

+
OrB(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

[E] [W] BOOLOR

+
OrD(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

[E] IFDUP NOTIF [T]/[E] ENDIF

+
OrC(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

[E] NOTIF [V] ENDIF

+
OrI(Arc<Miniscript<Pk, Ctx>>, Arc<Miniscript<Pk, Ctx>>)

IF [various] ELSE [various] ENDIF

+
Thresh(usizeVec<Arc<Miniscript<Pk, Ctx>>>)

[E] ([W] ADD)* k EQUAL

+
Multi(usizeVec<Pk>)

k ()* n CHECKMULTISIG

+

Implementations

impl<Pk, Ctx> Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

pub fn translate_pk<FPk, FPkh, Q, Error>(
    &self,
    translatefpk: &mut FPk,
    translatefpkh: &mut FPkh
) -> Result<Terminal<Q, Ctx>, Error> where
    FPk: FnMut(&Pk) -> Result<Q, Error>,
    FPkh: FnMut(&<Pk as MiniscriptKey>::Hash) -> Result<<Q as MiniscriptKey>::Hash, Error>,
    Q: MiniscriptKey

Convert an AST element with one public key type to one of another public key type .This will panic while converting to Segwit Miniscript using uncompressed public keys

-

impl<Pk, Ctx> Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey + ToPublicKey

pub fn encode(&self, builder: Builder) -> Builder

Encode the element as a fragment of Bitcoin Script. The inverse +

impl<Pk, Ctx> Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey + ToPublicKey

pub fn encode(&self, builder: Builder) -> Builder

Encode the element as a fragment of Bitcoin Script. The inverse function, from Script to an AST element, is implemented in the parse module.

-

pub fn script_size(&self) -> usize

Size, in bytes of the script-pubkey. If this Miniscript is used outside +

pub fn script_size(&self) -> usize

Size, in bytes of the script-pubkey. If this Miniscript is used outside of segwit (e.g. in a bare or P2SH descriptor), this quantity should be multiplied by 4 to compute the weight.

In general, it is not recommended to use this function directly, but to instead call the corresponding function on a Descriptor, which will handle the segwit/non-segwit technicalities for you.

-

pub fn max_dissatisfaction_witness_elements(&self) -> Option<usize>

Maximum number of witness elements used to dissatisfy the Miniscript +

pub fn max_dissatisfaction_witness_elements(&self) -> Option<usize>

Maximum number of witness elements used to dissatisfy the Miniscript fragment. Used to estimate the weight of the VarInt that specifies this number in a serialized transaction.

Will panic if the fragment is not an E, W or Ke.

-

pub fn max_dissatisfaction_size(&self, one_cost: usize) -> Option<usize>

Maximum dissatisfaction cost, in bytes, of a Miniscript fragment, +

pub fn max_dissatisfaction_size(&self, one_cost: usize) -> Option<usize>

Maximum dissatisfaction cost, in bytes, of a Miniscript fragment, if it is possible to compute this. This function should probably not ever be used directly. It is called from max_satisfaction_size.

Will panic if the fragment is not E, W or Ke

-

pub fn max_satisfaction_witness_elements(&self) -> usize

Maximum number of witness elements used to satisfy the Miniscript +

pub fn max_satisfaction_witness_elements(&self) -> usize

Maximum number of witness elements used to satisfy the Miniscript fragment. Used to estimate the weight of the VarInt that specifies this number in a serialized transaction.

This number does not include the witness script itself, so 1 needs to be added to the final result.

-

pub fn max_satisfaction_size(&self, one_cost: usize) -> usize

Maximum size, in bytes, of a satisfying witness. For Segwit outputs +

pub fn max_satisfaction_size(&self, one_cost: usize) -> usize

Maximum size, in bytes, of a satisfying witness. For Segwit outputs one_cost should be set to 2, since the number 1 requires two bytes to encode. For non-segwit outputs one_cost should be set to 1, since OP_1 is available in scriptSigs.

@@ -92,37 +92,37 @@ postfix.

This function may panic on misformed Miniscript objects which do not correspond to semantically sane Scripts. (Such scripts should be rejected at parse time. Any exceptions are bugs.)

-

Trait Implementations

impl<Pk, Ctx> Clone for Terminal<Pk, Ctx> where
    Ctx: ScriptContext + Clone,
    Pk: MiniscriptKey + Clone,
    <Pk as MiniscriptKey>::Hash: Clone

impl<Pk, Ctx> Debug for Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> Display for Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> Eq for Terminal<Pk, Ctx> where
    Ctx: ScriptContext + Eq,
    Pk: MiniscriptKey + Eq,
    <Pk as MiniscriptKey>::Hash: Eq

impl<Pk, Ctx> FromTree for Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey,
    <Pk as FromStr>::Err: ToString,
    <<Pk as MiniscriptKey>::Hash as FromStr>::Err: ToString

impl<Pk, Ctx> Hash for Terminal<Pk, Ctx> where
    Ctx: ScriptContext + Hash,
    Pk: MiniscriptKey + Hash,
    <Pk as MiniscriptKey>::Hash: Hash

impl<Pk, Ctx> Liftable<Pk> for Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> Ord for Terminal<Pk, Ctx> where
    Ctx: ScriptContext + Ord,
    Pk: MiniscriptKey + Ord,
    <Pk as MiniscriptKey>::Hash: Ord

impl<Pk, Ctx> PartialEq<Terminal<Pk, Ctx>> for Terminal<Pk, Ctx> where
    Ctx: ScriptContext + PartialEq<Ctx>,
    Pk: MiniscriptKey + PartialEq<Pk>,
    <Pk as MiniscriptKey>::Hash: PartialEq<<Pk as MiniscriptKey>::Hash>, 

impl<Pk, Ctx> PartialOrd<Terminal<Pk, Ctx>> for Terminal<Pk, Ctx> where
    Ctx: ScriptContext + PartialOrd<Ctx>,
    Pk: MiniscriptKey + PartialOrd<Pk>,
    <Pk as MiniscriptKey>::Hash: PartialOrd<<Pk as MiniscriptKey>::Hash>, 

impl<Pk, Ctx> StructuralEq for Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> StructuralPartialEq for Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

Auto Trait Implementations

impl<Pk, Ctx> RefUnwindSafe for Terminal<Pk, Ctx> where
    Ctx: RefUnwindSafe,
    Pk: RefUnwindSafe,
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe

impl<Pk, Ctx> Send for Terminal<Pk, Ctx> where
    Ctx: Send + Sync,
    Pk: Send + Sync,
    <Pk as MiniscriptKey>::Hash: Send + Sync

impl<Pk, Ctx> Sync for Terminal<Pk, Ctx> where
    Ctx: Send + Sync,
    Pk: Send + Sync,
    <Pk as MiniscriptKey>::Hash: Send + Sync

impl<Pk, Ctx> Unpin for Terminal<Pk, Ctx> where
    Pk: Unpin,
    <Pk as MiniscriptKey>::Hash: Unpin

impl<Pk, Ctx> UnwindSafe for Terminal<Pk, Ctx> where
    Ctx: RefUnwindSafe,
    Pk: RefUnwindSafe + UnwindSafe,
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe + UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

Trait Implementations

impl<Pk, Ctx> Clone for Terminal<Pk, Ctx> where
    Ctx: ScriptContext + Clone,
    Pk: MiniscriptKey + Clone,
    <Pk as MiniscriptKey>::Hash: Clone

impl<Pk, Ctx> Debug for Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> Display for Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> Eq for Terminal<Pk, Ctx> where
    Ctx: ScriptContext + Eq,
    Pk: MiniscriptKey + Eq,
    <Pk as MiniscriptKey>::Hash: Eq

impl<Pk, Ctx> FromTree for Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey,
    <Pk as FromStr>::Err: ToString,
    <<Pk as MiniscriptKey>::Hash as FromStr>::Err: ToString

impl<Pk, Ctx> Hash for Terminal<Pk, Ctx> where
    Ctx: ScriptContext + Hash,
    Pk: MiniscriptKey + Hash,
    <Pk as MiniscriptKey>::Hash: Hash

impl<Pk, Ctx> Liftable<Pk> for Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> Ord for Terminal<Pk, Ctx> where
    Ctx: ScriptContext + Ord,
    Pk: MiniscriptKey + Ord,
    <Pk as MiniscriptKey>::Hash: Ord

impl<Pk, Ctx> PartialEq<Terminal<Pk, Ctx>> for Terminal<Pk, Ctx> where
    Ctx: ScriptContext + PartialEq<Ctx>,
    Pk: MiniscriptKey + PartialEq<Pk>,
    <Pk as MiniscriptKey>::Hash: PartialEq<<Pk as MiniscriptKey>::Hash>, 

impl<Pk, Ctx> PartialOrd<Terminal<Pk, Ctx>> for Terminal<Pk, Ctx> where
    Ctx: ScriptContext + PartialOrd<Ctx>,
    Pk: MiniscriptKey + PartialOrd<Pk>,
    <Pk as MiniscriptKey>::Hash: PartialOrd<<Pk as MiniscriptKey>::Hash>, 

impl<Pk, Ctx> StructuralEq for Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> StructuralPartialEq for Terminal<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

Auto Trait Implementations

impl<Pk, Ctx> RefUnwindSafe for Terminal<Pk, Ctx> where
    Ctx: RefUnwindSafe,
    Pk: RefUnwindSafe,
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe

impl<Pk, Ctx> Send for Terminal<Pk, Ctx> where
    Ctx: Send + Sync,
    Pk: Send + Sync,
    <Pk as MiniscriptKey>::Hash: Send + Sync

impl<Pk, Ctx> Sync for Terminal<Pk, Ctx> where
    Ctx: Send + Sync,
    Pk: Send + Sync,
    <Pk as MiniscriptKey>::Hash: Send + Sync

impl<Pk, Ctx> Unpin for Terminal<Pk, Ctx> where
    Pk: Unpin,
    <Pk as MiniscriptKey>::Hash: Unpin

impl<Pk, Ctx> UnwindSafe for Terminal<Pk, Ctx> where
    Ctx: RefUnwindSafe,
    Pk: RefUnwindSafe + UnwindSafe,
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe + UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

+

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/error/enum.Error.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/error/enum.Error.html index 72553ca2c8..51b1b133bc 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/error/enum.Error.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/error/enum.Error.html @@ -18,28 +18,28 @@ }

Errors related to the parsing and usage of descriptors

Variants

-
InternalError
InvalidPrefix(Vec<u8>)
HardenedDerivationOnXpub
MalformedInput
KeyParsingError(String)
Policy(PolicyError)
InputIndexDoesntExist
MissingPublicKey
MissingDetails
InvalidDescriptorCharacter(char)
CantDeriveWithMiniscript
BIP32(Error)
Base58(Error)
PK(Error)
Miniscript(Error)
Hex(Error)

Trait Implementations

impl Debug for Error[src]

impl Display for Error[src]

impl Error for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<PolicyError> for Error[src]

Auto Trait Implementations

impl RefUnwindSafe for Error

impl Send for Error

impl Sync for Error

impl Unpin for Error

impl UnwindSafe for Error

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/index.html index 2bdbcbdb44..a4c4f2ecfd 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/index.html @@ -14,11 +14,11 @@ from [miniscript].

Segwitv0

Segwitv0 ScriptContext

Terminal

All AST elements

Traits

-
ExtractPolicy

Trait implemented on [Descriptor]s to add a method to extract the spending [policy]

+
ExtractPolicy

Trait implemented on Descriptors to add a method to extract the spending policy

MiniscriptKey

Public key trait which can be converted to Hash type

ScriptContext
ToPublicKey

Trait describing public key types which can be converted to bitcoin pubkeys

Type Definitions

-
ExtendedDescriptor

Alias for a [Descriptor] that can contain extended keys using [DescriptorPublicKey]

+
ExtendedDescriptor

Alias for a Descriptor that can contain extended keys using [DescriptorPublicKey]

HDKeyPaths

Alias for the type of maps that represent derivation paths in a psbt::Input or psbt::Output

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/enum.PolicyError.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/enum.PolicyError.html index 0246f20cce..6f889566f7 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/enum.PolicyError.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/enum.PolicyError.html @@ -9,23 +9,23 @@ }

Errors that can happen while extracting and manipulating policies

Variants

-
NotEnoughItemsSelected(String)
TooManyItemsSelected(String)
IndexOutOfRange(usize)
AddOnLeaf
AddOnPartialComplete
MixedTimelockUnits
IncompatibleConditions

Trait Implementations

impl Debug for PolicyError[src]

impl Display for PolicyError[src]

impl Error for PolicyError[src]

impl From<PolicyError> for Error[src]

impl From<PolicyError> for Error[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/enum.Satisfaction.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/enum.Satisfaction.html index e62db9d51f..6ebd3a49a7 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/enum.Satisfaction.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/enum.Satisfaction.html @@ -18,35 +18,35 @@ }

Represent if and how much a policy item is satisfied by the wallet's descriptor

Variants

-
Partial

Only a partial satisfaction of some kind of threshold policy

-

Fields of Partial

n: usize

Total number of items

-
m: usize

Threshold

-
items: Vec<usize>

The items that can be satisfied by the descriptor

-
conditions: ConditionMap

Extra conditions that also need to be satisfied

-
PartialComplete

Can reach the threshold of some kind of threshold policy

-

Fields of PartialComplete

n: usize

Total number of items

-
m: usize

Threshold

-
items: Vec<usize>

The items that can be satisfied by the descriptor

-
conditions: FoldedConditionMap

Extra conditions that also need to be satisfied

-
Complete

Can satisfy the policy item

-

Fields of Complete

condition: Condition

Extra conditions that also need to be satisfied

-
None

Cannot satisfy or contribute to the policy item

-

Implementations

impl Satisfaction[src]

pub fn is_leaf(&self) -> bool[src]

Trait Implementations

impl Clone for Satisfaction[src]

impl Debug for Satisfaction[src]

impl From<bool> for Satisfaction[src]

impl Serialize for Satisfaction[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/enum.SatisfiableItem.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/enum.SatisfiableItem.html index 7e27c014ca..a701a25eb3 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/enum.SatisfiableItem.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/enum.SatisfiableItem.html @@ -30,22 +30,22 @@ }

An item that need to be satisfied

Variants

-
Signature(PKOrF)
SignatureKey(PKOrF)
SHA256Preimage

Fields of SHA256Preimage

hash: Hash
HASH256Preimage

Fields of HASH256Preimage

hash: Hash
RIPEMD160Preimage

Fields of RIPEMD160Preimage

hash: Hash
HASH160Preimage

Fields of HASH160Preimage

hash: Hash
AbsoluteTimelock

Fields of AbsoluteTimelock

value: u32
RelativeTimelock

Fields of RelativeTimelock

value: u32
Thresh

Fields of Thresh

items: Vec<Policy>threshold: usize
Multisig

Fields of Multisig

keys: Vec<PKOrF>threshold: usize

Implementations

impl SatisfiableItem[src]

pub fn is_leaf(&self) -> bool[src]

pub fn id(&self) -> String[src]

Trait Implementations

impl Clone for SatisfiableItem[src]

impl Debug for SatisfiableItem[src]

impl From<SatisfiableItem> for Policy[src]

impl Serialize for SatisfiableItem[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/struct.Condition.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/struct.Condition.html index 4aa736ab3b..9d37306985 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/struct.Condition.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/struct.Condition.html @@ -3,36 +3,36 @@ pub timelock: Option<u32>, }

An extra condition that must be satisfied but that is out of control of the user

- Fields

csv: Option<u32>timelock: Option<u32>

Implementations

impl Condition[src]

pub fn is_null(&self) -> bool[src]

Trait Implementations

impl Clone for Condition[src]

impl Copy for Condition[src]

impl Debug for Condition[src]

impl Default for Condition[src]

impl Eq for Condition[src]

impl Hash for Condition[src]

impl Ord for Condition[src]

impl PartialEq<Condition> for Condition[src]

impl PartialOrd<Condition> for Condition[src]

impl Serialize for Condition[src]

impl StructuralEq for Condition[src]

impl StructuralPartialEq for Condition[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/struct.PKOrF.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/struct.PKOrF.html index af271a9b11..49e3b43d94 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/struct.PKOrF.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/struct.PKOrF.html @@ -1,20 +1,20 @@ bdk::descriptor::policy::PKOrF - Rust

[][src]Struct bdk::descriptor::policy::PKOrF

pub struct PKOrF { /* fields omitted */ }

Raw public key or extended key fingerprint

-

Trait Implementations

impl Clone for PKOrF[src]

impl Debug for PKOrF[src]

impl Default for PKOrF[src]

impl Serialize for PKOrF[src]

Auto Trait Implementations

impl RefUnwindSafe for PKOrF

impl Send for PKOrF

impl Sync for PKOrF

impl Unpin for PKOrF

impl UnwindSafe for PKOrF

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-
\ No newline at end of file +

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/struct.Policy.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/struct.Policy.html index 1151e37bf5..b50b8d43da 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/struct.Policy.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/policy/struct.Policy.html @@ -5,33 +5,33 @@ pub contribution: Satisfaction, }

Descriptor spending policy

- Fields

id: String

Identifier for this policy node

-
item: SatisfiableItem

Type of this policy node

-
satisfaction: Satisfaction

How a much given PSBT already satisfies this polcy node (currently unused)

-
contribution: Satisfaction

How the wallet's descriptor can satisfy this policy node

-

Implementations

impl Policy[src]

pub fn requires_path(&self) -> bool[src]

Return whether or not a specific path in the policy tree is required to unambiguously + Fieldsid: String

Identifier for this policy node

+
item: SatisfiableItem

Type of this policy node

+
satisfaction: Satisfaction

How a much given PSBT already satisfies this polcy node (currently unused)

+
contribution: Satisfaction

How the wallet's descriptor can satisfy this policy node

+

Implementations

impl Policy[src]

pub fn requires_path(&self) -> bool[src]

Return whether or not a specific path in the policy tree is required to unambiguously create a transaction

What this means is that for some spending policies the user should select which paths in the tree it intends to satisfy while signing, because the transaction must be created differently based on that.

-

pub fn get_condition(
    &self,
    path: &BTreeMap<String, Vec<usize>>
) -> Result<Condition, PolicyError>
[src]

Return the conditions that are set by the spending policy for a given path in the +

pub fn get_condition(
    &self,
    path: &BTreeMap<String, Vec<usize>>
) -> Result<Condition, PolicyError>
[src]

Return the conditions that are set by the spending policy for a given path in the policy tree

-

Trait Implementations

impl Clone for Policy[src]

impl Debug for Policy[src]

impl From<SatisfiableItem> for Policy[src]

impl Serialize for Policy[src]

Auto Trait Implementations

impl RefUnwindSafe for Policy

impl Send for Policy

impl Sync for Policy

impl Unpin for Policy

impl UnwindSafe for Policy

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

Trait Implementations

impl Clone for Policy[src]

impl Debug for Policy[src]

impl From<SatisfiableItem> for Policy[src]

impl Serialize for Policy[src]

Auto Trait Implementations

impl RefUnwindSafe for Policy

impl Send for Policy

impl Sync for Policy

impl Unpin for Policy

impl UnwindSafe for Policy

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

+

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/struct.Miniscript.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/struct.Miniscript.html index a1b8820683..ad08670aa5 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/struct.Miniscript.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/struct.Miniscript.html @@ -5,29 +5,29 @@ // some fields omitted }

Top-level script AST type

- Fields

node: Terminal<Pk, Ctx>

A node in the Abstract Syntax Tree(

-
ty: Type

The correctness and malleability type information for the AST node

-
ext: ExtData

Additional information helpful for extra analysis.

-

Implementations

impl<Pk, Ctx> Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

pub fn from_ast(t: Terminal<Pk, Ctx>) -> Result<Miniscript<Pk, Ctx>, Error>

Add type information(Type and Extdata) to Miniscript based on + Fieldsnode: Terminal<Pk, Ctx>

A node in the Abstract Syntax Tree(

+
ty: Type

The correctness and malleability type information for the AST node

+
ext: ExtData

Additional information helpful for extra analysis.

+

Implementations

impl<Pk, Ctx> Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

pub fn from_ast(t: Terminal<Pk, Ctx>) -> Result<Miniscript<Pk, Ctx>, Error>

Add type information(Type and Extdata) to Miniscript based on AstElem fragment. Dependent on display and clone because of Error Display code of type_check.

-

impl<Pk, Ctx> Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

pub fn into_inner(self) -> Terminal<Pk, Ctx>

Extracts the AstElem representing the root of the miniscript

-

pub fn as_inner(&self) -> &Terminal<Pk, Ctx>

impl<Ctx> Miniscript<PublicKey, Ctx> where
    Ctx: ScriptContext

pub fn parse(script: &Script) -> Result<Miniscript<PublicKey, Ctx>, Error>

Attempt to parse a script into a Miniscript representation

-

impl<Pk, Ctx> Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey + ToPublicKey

pub fn encode(&self) -> Script

Encode as a Bitcoin script

-

pub fn script_size(&self) -> usize

Size, in bytes of the script-pubkey. If this Miniscript is used outside +

impl<Pk, Ctx> Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

pub fn into_inner(self) -> Terminal<Pk, Ctx>

Extracts the AstElem representing the root of the miniscript

+

pub fn as_inner(&self) -> &Terminal<Pk, Ctx>

impl<Ctx> Miniscript<PublicKey, Ctx> where
    Ctx: ScriptContext

pub fn parse(script: &Script) -> Result<Miniscript<PublicKey, Ctx>, Error>

Attempt to parse a script into a Miniscript representation

+

impl<Pk, Ctx> Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey + ToPublicKey

pub fn encode(&self) -> Script

Encode as a Bitcoin script

+

pub fn script_size(&self) -> usize

Size, in bytes of the script-pubkey. If this Miniscript is used outside of segwit (e.g. in a bare or P2SH descriptor), this quantity should be multiplied by 4 to compute the weight.

In general, it is not recommended to use this function directly, but to instead call the corresponding function on a Descriptor, which will handle the segwit/non-segwit technicalities for you.

-

pub fn max_satisfaction_witness_elements(&self) -> usize

Maximum number of witness elements used to satisfy the Miniscript +

pub fn max_satisfaction_witness_elements(&self) -> usize

Maximum number of witness elements used to satisfy the Miniscript fragment, including the witness script itself. Used to estimate the weight of the VarInt that specifies this number in a serialized transaction.

This function may panic on misformed Miniscript objects which do not correspond to semantically sane Scripts. (Such scripts should be rejected at parse time. Any exceptions are bugs.)

-

pub fn max_satisfaction_size(&self, one_cost: usize) -> usize

Maximum size, in bytes, of a satisfying witness. For Segwit outputs +

pub fn max_satisfaction_size(&self, one_cost: usize) -> usize

Maximum size, in bytes, of a satisfying witness. For Segwit outputs one_cost should be set to 2, since the number 1 requires two bytes to encode. For non-segwit outputs one_cost should be set to 1, since OP_1 is available in scriptSigs.

@@ -40,58 +40,58 @@ postfix.

This function may panic on misformed Miniscript objects which do not correspond to semantically sane Scripts. (Such scripts should be rejected at parse time. Any exceptions are bugs.)

-

impl<Pk, Ctx> Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

pub fn translate_pk<FPk, FPkh, Q, FuncError>(
    &self,
    translatefpk: &mut FPk,
    translatefpkh: &mut FPkh
) -> Result<Miniscript<Q, Ctx>, FuncError> where
    FPk: FnMut(&Pk) -> Result<Q, FuncError>,
    FPkh: FnMut(&<Pk as MiniscriptKey>::Hash) -> Result<<Q as MiniscriptKey>::Hash, FuncError>,
    Q: MiniscriptKey

This will panic if translatefpk returns an uncompressed key when +

impl<Pk, Ctx> Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

pub fn translate_pk<FPk, FPkh, Q, FuncError>(
    &self,
    translatefpk: &mut FPk,
    translatefpkh: &mut FPkh
) -> Result<Miniscript<Q, Ctx>, FuncError> where
    FPk: FnMut(&Pk) -> Result<Q, FuncError>,
    FPkh: FnMut(&<Pk as MiniscriptKey>::Hash) -> Result<<Q as MiniscriptKey>::Hash, FuncError>,
    Q: MiniscriptKey

This will panic if translatefpk returns an uncompressed key when converting to a Segwit descriptor. To prevent this panic, ensure translatefpk returns an error in this case instead.

-

impl<Pk, Ctx> Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey + ToPublicKey

pub fn satisfy<S>(&self, satisfier: S) -> Option<Vec<Vec<u8>>> where
    S: Satisfier<Pk>, 

Attempt to produce a satisfying witness for the +

impl<Pk, Ctx> Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey + ToPublicKey

pub fn satisfy<S>(&self, satisfier: S) -> Option<Vec<Vec<u8>>> where
    S: Satisfier<Pk>, 

Attempt to produce a satisfying witness for the witness script represented by the parse tree

-

Trait Implementations

impl<Pk, Ctx> Clone for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext + Clone,
    Pk: MiniscriptKey + Clone

impl<Pk, Ctx> Debug for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> Display for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

Trait Implementations

impl<Pk, Ctx> Clone for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext + Clone,
    Pk: MiniscriptKey + Clone

impl<Pk, Ctx> Debug for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> Display for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> Eq for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

Eq of Miniscript must depend only on node and not the type information. The type information and extra_properties can be deterministically determined by the ast.

-

impl<Ctx: ScriptContext> ExtractPolicy for Miniscript<DescriptorPublicKey, Ctx>[src]

impl<Pk, Ctx> FromStr for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey,
    <Pk as FromStr>::Err: ToString,
    <<Pk as MiniscriptKey>::Hash as FromStr>::Err: ToString

type Err = Error

The associated error which can be returned from parsing.

-

impl<Pk, Ctx> FromTree for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey,
    <Pk as FromStr>::Err: ToString,
    <<Pk as MiniscriptKey>::Hash as FromStr>::Err: ToString

fn from_tree(top: &Tree) -> Result<Miniscript<Pk, Ctx>, Error>

Parse an expression tree into a Miniscript. As a general rule, this +

impl<Ctx: ScriptContext> ExtractPolicy for Miniscript<DescriptorPublicKey, Ctx>[src]

impl<Pk, Ctx> FromStr for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey,
    <Pk as FromStr>::Err: ToString,
    <<Pk as MiniscriptKey>::Hash as FromStr>::Err: ToString

type Err = Error

The associated error which can be returned from parsing.

+

impl<Pk, Ctx> FromTree for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey,
    <Pk as FromStr>::Err: ToString,
    <<Pk as MiniscriptKey>::Hash as FromStr>::Err: ToString

fn from_tree(top: &Tree) -> Result<Miniscript<Pk, Ctx>, Error>

Parse an expression tree into a Miniscript. As a general rule, this should not be called directly; rather go through the descriptor API.

-

impl<Pk, Ctx> Hash for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext + Hash,
    Pk: MiniscriptKey + Hash

impl<Pk, Ctx> Liftable<Pk> for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> Hash for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext + Hash,
    Pk: MiniscriptKey + Hash

impl<Pk, Ctx> Liftable<Pk> for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

impl<Pk, Ctx> Ord for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

Ord of Miniscript must depend only on node and not the type information. The type information and extra_properties can be deterministically determined by the ast.

-

impl<Pk, Ctx> PartialEq<Miniscript<Pk, Ctx>> for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

PartialEq of Miniscript must depend only on node and not the type information. The type information and extra_properties can be deterministically determined by the ast.

-

impl<Pk, Ctx> PartialOrd<Miniscript<Pk, Ctx>> for Miniscript<Pk, Ctx> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

PartialOrd of Miniscript must depend only on node and not the type information. The type information and extra_properties can be deterministically determined by the ast.

-

Auto Trait Implementations

impl<Pk, Ctx> RefUnwindSafe for Miniscript<Pk, Ctx> where
    Ctx: RefUnwindSafe,
    Pk: RefUnwindSafe,
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe

impl<Pk, Ctx> Send for Miniscript<Pk, Ctx> where
    Ctx: Send + Sync,
    Pk: Send + Sync,
    <Pk as MiniscriptKey>::Hash: Send + Sync

impl<Pk, Ctx> Sync for Miniscript<Pk, Ctx> where
    Ctx: Send + Sync,
    Pk: Send + Sync,
    <Pk as MiniscriptKey>::Hash: Send + Sync

impl<Pk, Ctx> Unpin for Miniscript<Pk, Ctx> where
    Ctx: Unpin,
    Pk: Unpin,
    <Pk as MiniscriptKey>::Hash: Unpin

impl<Pk, Ctx> UnwindSafe for Miniscript<Pk, Ctx> where
    Ctx: RefUnwindSafe + UnwindSafe,
    Pk: RefUnwindSafe + UnwindSafe,
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe + UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

Auto Trait Implementations

impl<Pk, Ctx> RefUnwindSafe for Miniscript<Pk, Ctx> where
    Ctx: RefUnwindSafe,
    Pk: RefUnwindSafe,
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe

impl<Pk, Ctx> Send for Miniscript<Pk, Ctx> where
    Ctx: Send + Sync,
    Pk: Send + Sync,
    <Pk as MiniscriptKey>::Hash: Send + Sync

impl<Pk, Ctx> Sync for Miniscript<Pk, Ctx> where
    Ctx: Send + Sync,
    Pk: Send + Sync,
    <Pk as MiniscriptKey>::Hash: Send + Sync

impl<Pk, Ctx> Unpin for Miniscript<Pk, Ctx> where
    Ctx: Unpin,
    Pk: Unpin,
    <Pk as MiniscriptKey>::Hash: Unpin

impl<Pk, Ctx> UnwindSafe for Miniscript<Pk, Ctx> where
    Ctx: RefUnwindSafe + UnwindSafe,
    Pk: RefUnwindSafe + UnwindSafe,
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe + UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

+

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.ExtractPolicy.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.ExtractPolicy.html index 74215f7434..522bac569e 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.ExtractPolicy.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.ExtractPolicy.html @@ -1,6 +1,6 @@ bdk::descriptor::ExtractPolicy - Rust

[][src]Trait bdk::descriptor::ExtractPolicy

pub trait ExtractPolicy {
     fn extract_policy(
        &self,
        signers: Arc<SignersContainer<DescriptorPublicKey>>
    ) -> Result<Option<Policy>, Error>; -}

Trait implemented on [Descriptor]s to add a method to extract the spending [policy]

+}

Trait implemented on Descriptors to add a method to extract the spending policy

-

Required methods

fn extract_policy(
    &self,
    signers: Arc<SignersContainer<DescriptorPublicKey>>
) -> Result<Option<Policy>, Error>

Loading content... -

Implementors

impl ExtractPolicy for Descriptor<DescriptorPublicKey>[src]

impl<Ctx: ScriptContext> ExtractPolicy for Miniscript<DescriptorPublicKey, Ctx>[src]

Loading content...
\ No newline at end of file +

Required methods

fn extract_policy(
    &self,
    signers: Arc<SignersContainer<DescriptorPublicKey>>
) -> Result<Option<Policy>, Error>

Loading content... +

Implementors

impl ExtractPolicy for Descriptor<DescriptorPublicKey>[src]

impl<Ctx: ScriptContext> ExtractPolicy for Miniscript<DescriptorPublicKey, Ctx>[src]

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.MiniscriptKey.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.MiniscriptKey.html index 19a9329fdc..5fedd105d6 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.MiniscriptKey.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.MiniscriptKey.html @@ -5,14 +5,14 @@ fn is_uncompressed(&self) -> bool { ... } }

Public key trait which can be converted to Hash type

-

Associated Types

type Hash: Clone + Eq + Ord + Debug + Display + Hash + FromStr

The associated Hash type with the publicKey

+

Associated Types

type Hash: Clone + Eq + Ord + Debug + Display + Hash + FromStr

The associated Hash type with the publicKey

Loading content... -

Required methods

fn to_pubkeyhash(&self) -> Self::Hash

Converts an object to PublicHash

+

Required methods

fn to_pubkeyhash(&self) -> Self::Hash

Converts an object to PublicHash

Loading content... -

Provided methods

fn is_uncompressed(&self) -> bool

Check if the publicKey is uncompressed. The default +

Provided methods

fn is_uncompressed(&self) -> bool

Check if the publicKey is uncompressed. The default implementation returns false

Loading content... -

Implementations on Foreign Types

impl MiniscriptKey for DummyKey

type Hash = DummyKeyHash

impl MiniscriptKey for String

impl MiniscriptKey for PublicKey

fn is_uncompressed(&self) -> bool

is_uncompressed returns true only for +

Implementations on Foreign Types

impl MiniscriptKey for PublicKey

fn is_uncompressed(&self) -> bool

is_uncompressed returns true only for bitcoin::Publickey type if the underlying key is uncompressed.

-

type Hash = Hash

impl MiniscriptKey for DescriptorPublicKey

type Hash = Hash

Loading content... +

type Hash = Hash

impl MiniscriptKey for DummyKey

type Hash = DummyKeyHash

impl MiniscriptKey for DescriptorPublicKey

type Hash = Hash

impl MiniscriptKey for String

Loading content...

Implementors

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.ScriptContext.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.ScriptContext.html index 512fe4af1b..9c6bcf905b 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.ScriptContext.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.ScriptContext.html @@ -2,7 +2,7 @@ fn check_frag_non_malleable<Pk, Ctx>(
        _frag: &Terminal<Pk, Ctx>
    ) -> Result<(), ScriptContextError>
    where
        Ctx: ScriptContext,
        Pk: MiniscriptKey
;
fn check_frag_validity<Pk, Ctx>(
        _frag: &Terminal<Pk, Ctx>
    ) -> Result<(), ScriptContextError>
    where
        Ctx: ScriptContext,
        Pk: MiniscriptKey
; }
-

Required methods

fn check_frag_non_malleable<Pk, Ctx>(
    _frag: &Terminal<Pk, Ctx>
) -> Result<(), ScriptContextError> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

Depending on ScriptContext, fragments can be malleable. For Example, +

Required methods

fn check_frag_non_malleable<Pk, Ctx>(
    _frag: &Terminal<Pk, Ctx>
) -> Result<(), ScriptContextError> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

Depending on ScriptContext, fragments can be malleable. For Example, under Legacy context, PkH is malleable because it is possible to estimate the cost of satisfaction because of compressed keys This is currently only used in compiler code for removing malleable @@ -10,10 +10,10 @@ compilations. This does NOT recursively check if the children of the fragment are valid or not. Since the compilation proceeds in a leaf to root fashion, a recursive check is unnecessary.

-

fn check_frag_validity<Pk, Ctx>(
    _frag: &Terminal<Pk, Ctx>
) -> Result<(), ScriptContextError> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

Depending on script Context, some of the Terminals might not be valid. +

fn check_frag_validity<Pk, Ctx>(
    _frag: &Terminal<Pk, Ctx>
) -> Result<(), ScriptContextError> where
    Ctx: ScriptContext,
    Pk: MiniscriptKey

Depending on script Context, some of the Terminals might not be valid. For example, in Segwit Context with MiniscriptKey as bitcoin::PublicKey uncompressed public keys are non-standard and thus invalid. Post Tapscript upgrade, this would have to consider other nodes. This does not recursively check

Loading content... -

Implementors

impl ScriptContext for Legacy

impl ScriptContext for Segwitv0

Loading content... \ No newline at end of file +

Implementors

impl ScriptContext for Legacy

impl ScriptContext for Segwitv0

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.ToPublicKey.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.ToPublicKey.html index c799b12de8..a68f8be8e4 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.ToPublicKey.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/trait.ToPublicKey.html @@ -5,15 +5,15 @@ fn serialized_len(&self) -> usize { ... } }

Trait describing public key types which can be converted to bitcoin pubkeys

-

Required methods

fn to_public_key(&self) -> PublicKey

Converts an object to a public key

-

fn hash_to_hash160(hash: &Self::Hash) -> Hash

Converts a hashed version of the public key to a hash160 hash.

+

Required methods

fn to_public_key(&self) -> PublicKey

Converts an object to a public key

+

fn hash_to_hash160(hash: &Self::Hash) -> Hash

Converts a hashed version of the public key to a hash160 hash.

This method must be consistent with to_public_key, in the sense that calling MiniscriptKey::to_pubkeyhash followed by this function should give the same result as calling to_public_key and hashing the result directly.

Loading content... -

Provided methods

fn serialized_len(&self) -> usize

Computes the size of a public key when serialized in a script, +

Provided methods

fn serialized_len(&self) -> usize

Computes the size of a public key when serialized in a script, including the length bytes

Loading content... -

Implementations on Foreign Types

impl ToPublicKey for PublicKey

impl ToPublicKey for DescriptorPublicKey

impl ToPublicKey for DummyKey

Loading content... +

Implementations on Foreign Types

impl ToPublicKey for DummyKey

impl ToPublicKey for DescriptorPublicKey

impl ToPublicKey for PublicKey

Loading content...

Implementors

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/type.ExtendedDescriptor.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/type.ExtendedDescriptor.html index 1f60bc989e..6cac36a187 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/type.ExtendedDescriptor.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/descriptor/type.ExtendedDescriptor.html @@ -1,2 +1,2 @@ -bdk::descriptor::ExtendedDescriptor - Rust

[][src]Type Definition bdk::descriptor::ExtendedDescriptor

type ExtendedDescriptor = Descriptor<DescriptorPublicKey>;

Alias for a [Descriptor] that can contain extended keys using [DescriptorPublicKey]

+bdk::descriptor::ExtendedDescriptor - Rust

[][src]Type Definition bdk::descriptor::ExtendedDescriptor

type ExtendedDescriptor = Descriptor<DescriptorPublicKey>;

Alias for a Descriptor that can contain extended keys using [DescriptorPublicKey]

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/enum.Error.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/enum.Error.html index cdd9814f75..7a1673fb2e 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/enum.Error.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/enum.Error.html @@ -41,40 +41,40 @@ Esplora(EsploraError), CompactFilters(CompactFiltersError), Sled(Error), -}

Errors that can be thrown by the Wallet

+}

Errors that can be thrown by the Wallet

Variants

-
KeyMismatch(PublicKey, PublicKey)
MissingInputUTXO(usize)
InvalidU32Bytes(Vec<u8>)
Generic(String)
ScriptDoesntHaveAddressForm
SendAllMultipleOutputs
NoAddressees
OutputBelowDustLimit(usize)
InsufficientFunds
InvalidAddressNetwork(Address)
UnknownUTXO
DifferentTransactions
TransactionNotFound
TransactionConfirmed
IrreplaceableTransaction
FeeRateTooLow

Fields of FeeRateTooLow

required: FeeRate
ChecksumMismatch
DifferentDescriptorStructure
SpendingPolicyRequired
InvalidPolicyPathError(PolicyError)
Signer(SignerError)
Uncapable(Capability)
OfflineClient
InvalidProgressValue(f32)
ProgressUpdateError
MissingCachedAddresses
InvalidOutpoint(OutPoint)
Descriptor(Error)
AddressValidator(AddressValidatorError)
Encode(Error)
Miniscript(Error)
BIP32(Error)
Secp256k1(Error)
JSON(Error)
Hex(Error)
PSBT(Error)
Electrum(Error)
Esplora(EsploraError)
CompactFilters(CompactFiltersError)
Sled(Error)

Trait Implementations

impl Debug for Error[src]

impl Display for Error[src]

impl Error for Error[src]

\ No newline at end of file +

impl From<AddressValidatorError> for Error[src]

impl From<CompactFiltersError> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for CompactFiltersError[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<EsploraError> for Error[src]

impl From<PolicyError> for Error[src]

impl From<SignerError> for Error[src]

Auto Trait Implementations

impl !RefUnwindSafe for Error

impl Send for Error

impl Sync for Error

impl Unpin for Error

impl !UnwindSafe for Error

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/enum.ScriptType.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/enum.ScriptType.html index 2765268c94..d9a631eb91 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/enum.ScriptType.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/enum.ScriptType.html @@ -4,33 +4,33 @@ }

Types of script

Variants

-
External
Internal

Implementations

impl ScriptType[src]

pub fn as_byte(&self) -> u8[src]

pub fn is_internal(&self) -> bool[src]

Trait Implementations

impl AsRef<[u8]> for ScriptType[src]

impl Clone for ScriptType[src]

impl Copy for ScriptType[src]

impl Debug for ScriptType[src]

impl<'de> Deserialize<'de> for ScriptType[src]

impl Eq for ScriptType[src]

impl Hash for ScriptType[src]

impl PartialEq<ScriptType> for ScriptType[src]

impl Serialize for ScriptType[src]

impl StructuralEq for ScriptType[src]

impl StructuralPartialEq for ScriptType[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Base32Len for T where
    T: AsRef<[u8]>, 

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<'f, T> CheckBase32<Vec<u5>> for T where
    T: AsRef<[u8]>, 

type Err = Error

Error type if conversion fails

-

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToBase32 for T where
    T: AsRef<[u8]>, 

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/index.html index 750a8ef4a8..99f31df86c 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/index.html @@ -1,5 +1,5 @@ bdk - Rust

[][src]Crate bdk

Re-exports

-
pub extern crate bitcoin;
pub extern crate miniscript;
pub extern crate electrum_client;
pub extern crate reqwest;
pub extern crate sled;
pub use descriptor::HDKeyPaths;
pub use wallet::address_validator;
pub use wallet::signer;
pub use wallet::tx_builder::TxBuilder;
pub use wallet::OfflineWallet;
pub use wallet::Wallet;

Modules

+
pub extern crate bitcoin;
pub extern crate miniscript;
pub extern crate electrum_client;
pub extern crate reqwest;
pub extern crate sled;
pub use descriptor::HDKeyPaths;
pub use wallet::address_validator;
pub use wallet::signer;
pub use wallet::tx_builder::TxBuilder;
pub use wallet::OfflineWallet;
pub use wallet::Wallet;

Modules

blockchain

Blockchain backends

database

Database types

descriptor

Descriptors

@@ -9,6 +9,6 @@
TransactionDetails

A wallet transaction

UTXO

A wallet unspent output

Enums

-
Error

Errors that can be thrown by the Wallet

+
Error

Errors that can be thrown by the Wallet

ScriptType

Types of script

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/struct.FeeRate.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/struct.FeeRate.html index 44ddc154fe..b7a709594a 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/struct.FeeRate.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/struct.FeeRate.html @@ -1,30 +1,30 @@ bdk::FeeRate - Rust

[][src]Struct bdk::FeeRate

pub struct FeeRate(_);

Fee rate

-

Implementations

impl FeeRate[src]

pub fn from_btc_per_kvb(btc_per_kvb: f32) -> Self[src]

Create a new instance of [FeeRate] given a float fee rate in btc/kvbytes

-

pub fn from_sat_per_vb(sat_per_vb: f32) -> Self[src]

Create a new instance of [FeeRate] given a float fee rate in satoshi/vbyte

-

pub fn default_min_relay_fee() -> Self[src]

Create a new [FeeRate] with the default min relay fee value

-

pub fn as_sat_vb(&self) -> f32[src]

Return the value as satoshi/vbyte

-

Trait Implementations

impl Clone for FeeRate[src]

impl Copy for FeeRate[src]

impl Debug for FeeRate[src]

impl Default for FeeRate[src]

impl PartialEq<FeeRate> for FeeRate[src]

impl PartialOrd<FeeRate> for FeeRate[src]

impl StructuralPartialEq for FeeRate[src]

Auto Trait Implementations

impl RefUnwindSafe for FeeRate

impl Send for FeeRate

impl Sync for FeeRate

impl Unpin for FeeRate

impl UnwindSafe for FeeRate

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-
\ No newline at end of file +

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/struct.TransactionDetails.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/struct.TransactionDetails.html index 805445ce1f..1aa1b86e06 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/struct.TransactionDetails.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/struct.TransactionDetails.html @@ -8,26 +8,26 @@ pub height: Option<u32>, }

A wallet transaction

- Fields

transaction: Option<Transaction>txid: Txidtimestamp: u64received: u64sent: u64fees: u64height: Option<u32>

Trait Implementations

impl Clone for TransactionDetails[src]

impl Debug for TransactionDetails[src]

impl Default for TransactionDetails[src]

impl<'de> Deserialize<'de> for TransactionDetails[src]

impl Eq for TransactionDetails[src]

impl PartialEq<TransactionDetails> for TransactionDetails[src]

impl Serialize for TransactionDetails[src]

impl StructuralEq for TransactionDetails[src]

impl StructuralPartialEq for TransactionDetails[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/struct.UTXO.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/struct.UTXO.html index 6c7b7583ec..3032d4e7b5 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/struct.UTXO.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/struct.UTXO.html @@ -4,25 +4,25 @@ pub is_internal: bool, }

A wallet unspent output

- Fields

outpoint: OutPointtxout: TxOutis_internal: bool

Trait Implementations

impl Clone for UTXO[src]

impl Debug for UTXO[src]

impl<'de> Deserialize<'de> for UTXO[src]

impl Eq for UTXO[src]

impl PartialEq<UTXO> for UTXO[src]

impl Serialize for UTXO[src]

impl StructuralEq for UTXO[src]

impl StructuralPartialEq for UTXO[src]

Auto Trait Implementations

impl RefUnwindSafe for UTXO

impl Send for UTXO

impl Sync for UTXO

impl Unpin for UTXO

impl UnwindSafe for UTXO

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/address_validator/enum.AddressValidatorError.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/address_validator/enum.AddressValidatorError.html index 1214d2bcdc..bed4a97a0e 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/address_validator/enum.AddressValidatorError.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/address_validator/enum.AddressValidatorError.html @@ -7,31 +7,31 @@ }

Errors that can be returned to fail the validation of an address

Variants

-
UserRejected
ConnectionError
TimeoutError
InvalidScript
Message(String)

Trait Implementations

impl Clone for AddressValidatorError[src]

impl Debug for AddressValidatorError[src]

impl Display for AddressValidatorError[src]

impl Eq for AddressValidatorError[src]

impl Error for AddressValidatorError[src]

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/address_validator/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/address_validator/index.html index 9393f2927f..30b19c6bc3 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/address_validator/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/address_validator/index.html @@ -3,10 +3,10 @@ hardware wallet, so that the user can cross-check its correctness.

More generally speaking though, these callbacks can also be used to "do something" every time an address is generated, without necessarily checking or validating it.

-

An address validator can be attached to a Wallet by using the -Wallet::add_address_validator method, and +

An address validator can be attached to a Wallet by using the +Wallet::add_address_validator method, and whenever a new address is generated (either explicitly by the user with -Wallet::get_new_address or internally to create a change +Wallet::get_new_address or internally to create a change address) all the attached validators will be polled, in sequence. All of them must complete successfully to continue.

Example

diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/address_validator/trait.AddressValidator.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/address_validator/trait.AddressValidator.html index 8e76d6be2a..8c46006675 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/address_validator/trait.AddressValidator.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/address_validator/trait.AddressValidator.html @@ -1,11 +1,11 @@ bdk::wallet::address_validator::AddressValidator - Rust

[][src]Trait bdk::wallet::address_validator::AddressValidator

pub trait AddressValidator {
     fn validate(
        &self,
        script_type: ScriptType,
        hd_keypaths: &HDKeyPaths,
        script: &Script
    ) -> Result<(), AddressValidatorError>; }

Trait to build address validators

-

All the address validators attached to a wallet with Wallet::add_address_validator will be polled +

All the address validators attached to a wallet with Wallet::add_address_validator will be polled every time an address (external or internal) is generated by the wallet. Errors returned in the validator will be propagated up to the original caller that triggered the address generation.

-

For a usage example see this module's documentation.

+

For a usage example see this module's documentation.

-

Required methods

fn validate(
    &self,
    script_type: ScriptType,
    hd_keypaths: &HDKeyPaths,
    script: &Script
) -> Result<(), AddressValidatorError>

Validate or inspect an address

+

Required methods

fn validate(
    &self,
    script_type: ScriptType,
    hd_keypaths: &HDKeyPaths,
    script: &Script
) -> Result<(), AddressValidatorError>

Validate or inspect an address

Loading content...

Implementors

Loading content...
\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/index.html index 7f859804f5..3f56b8d644 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/index.html @@ -1,12 +1,12 @@ bdk::wallet::coin_selection - Rust

[][src]Module bdk::wallet::coin_selection

Coin selection

-

This module provides the trait [CoinSelectionAlgorithm] that can be implemented to +

This module provides the trait CoinSelectionAlgorithm that can be implemented to define custom coin selection algorithms.

-

The coin selection algorithm is not globally part of a Wallet, instead it -is selected whenever a Wallet::create_tx call is made, through -the use of the TxBuilder structure, specifically with -TxBuilder::coin_selection method.

-

The [DefaultCoinSelectionAlgorithm] selects the default coin selection algorithm that -TxBuilder uses, if it's not explicitly overridden.

+

The coin selection algorithm is not globally part of a Wallet, instead it +is selected whenever a Wallet::create_tx call is made, through +the use of the TxBuilder structure, specifically with +TxBuilder::coin_selection method.

+

The DefaultCoinSelectionAlgorithm selects the default coin selection algorithm that +TxBuilder uses, if it's not explicitly overridden.

Example

 #[derive(Debug)]
@@ -68,6 +68,6 @@ the use of the TxBuilder
 

Traits

CoinSelectionAlgorithm

Trait for generalized coin selection algorithms

Type Definitions

-
DefaultCoinSelectionAlgorithm

Default coin selection algorithm used by TxBuilder if not +
DefaultCoinSelectionAlgorithm

Default coin selection algorithm used by TxBuilder if not overridden

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/struct.CoinSelectionResult.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/struct.CoinSelectionResult.html index 1081c3afdd..45549badf6 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/struct.CoinSelectionResult.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/struct.CoinSelectionResult.html @@ -4,17 +4,17 @@ pub fee_amount: f32, }

Result of a successful coin selection

- Fields

txin: Vec<(TxIn, Script)>

List of inputs to use, with the respective previous script_pubkey

-
selected_amount: u64

Sum of the selected inputs' value

-
fee_amount: f32

Total fee amount in satoshi

-

Trait Implementations

impl Debug for CoinSelectionResult[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file + Fieldstxin: Vec<(TxIn, Script)>

List of inputs to use, with the respective previous script_pubkey

+
selected_amount: u64

Sum of the selected inputs' value

+
fee_amount: f32

Total fee amount in satoshi

+

Trait Implementations

impl Debug for CoinSelectionResult[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/struct.DumbCoinSelection.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/struct.DumbCoinSelection.html index d2e5130177..a49bbca57f 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/struct.DumbCoinSelection.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/struct.DumbCoinSelection.html @@ -1,16 +1,16 @@ bdk::wallet::coin_selection::DumbCoinSelection - Rust

[][src]Struct bdk::wallet::coin_selection::DumbCoinSelection

pub struct DumbCoinSelection;

Simple and dumb coin selection

This coin selection algorithm sorts the available UTXOs by value and then picks them starting from the largest ones until the required amount is reached.

-

Trait Implementations

impl CoinSelectionAlgorithm for DumbCoinSelection[src]

impl Debug for DumbCoinSelection[src]

impl Default for DumbCoinSelection[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

Trait Implementations

impl CoinSelectionAlgorithm for DumbCoinSelection[src]

impl Debug for DumbCoinSelection[src]

impl Default for DumbCoinSelection[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/trait.CoinSelectionAlgorithm.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/trait.CoinSelectionAlgorithm.html index f911a82add..704db49dbf 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/trait.CoinSelectionAlgorithm.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/trait.CoinSelectionAlgorithm.html @@ -1,11 +1,11 @@ bdk::wallet::coin_selection::CoinSelectionAlgorithm - Rust

[][src]Trait bdk::wallet::coin_selection::CoinSelectionAlgorithm

pub trait CoinSelectionAlgorithm: Debug {
     fn coin_select(
        &self,
        utxos: Vec<UTXO>,
        use_all_utxos: bool,
        fee_rate: FeeRate,
        amount_needed: u64,
        input_witness_weight: usize,
        fee_amount: f32
    ) -> Result<CoinSelectionResult, Error>; }

Trait for generalized coin selection algorithms

-

This trait can be implemented to make the Wallet use a customized coin +

This trait can be implemented to make the Wallet use a customized coin selection algorithm when it creates transactions.

-

For an example see this module's documentation.

+

For an example see this module's documentation.

-

Required methods

fn coin_select(
    &self,
    utxos: Vec<UTXO>,
    use_all_utxos: bool,
    fee_rate: FeeRate,
    amount_needed: u64,
    input_witness_weight: usize,
    fee_amount: f32
) -> Result<CoinSelectionResult, Error>

Perform the coin selection

+

Required methods

fn coin_select(
    &self,
    utxos: Vec<UTXO>,
    use_all_utxos: bool,
    fee_rate: FeeRate,
    amount_needed: u64,
    input_witness_weight: usize,
    fee_amount: f32
) -> Result<CoinSelectionResult, Error>

Perform the coin selection

  • utxos: the list of spendable UTXOs
  • use_all_utxos: if true all utxos should be spent unconditionally
  • @@ -15,4 +15,4 @@ selection algorithm when it creates transactions.

  • fee_amount: the amount of fees in satoshi already accumulated from adding outputs
Loading content... -

Implementors

impl CoinSelectionAlgorithm for DumbCoinSelection[src]

Loading content...
\ No newline at end of file +

Implementors

impl CoinSelectionAlgorithm for DumbCoinSelection[src]

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/type.DefaultCoinSelectionAlgorithm.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/type.DefaultCoinSelectionAlgorithm.html index 39e9b5a231..b1a07047c3 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/type.DefaultCoinSelectionAlgorithm.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/coin_selection/type.DefaultCoinSelectionAlgorithm.html @@ -1,3 +1,3 @@ -bdk::wallet::coin_selection::DefaultCoinSelectionAlgorithm - Rust

[][src]Type Definition bdk::wallet::coin_selection::DefaultCoinSelectionAlgorithm

type DefaultCoinSelectionAlgorithm = DumbCoinSelection;

Default coin selection algorithm used by TxBuilder if not +bdk::wallet::coin_selection::DefaultCoinSelectionAlgorithm - Rust

[][src]Type Definition bdk::wallet::coin_selection::DefaultCoinSelectionAlgorithm

type DefaultCoinSelectionAlgorithm = DumbCoinSelection;

Default coin selection algorithm used by TxBuilder if not overridden

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/export/struct.WalletExport.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/export/struct.WalletExport.html index 25efee899e..3e5d692275 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/export/struct.WalletExport.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/export/struct.WalletExport.html @@ -3,11 +3,11 @@ pub label: String, // some fields omitted }

Structure that contains the export of a wallet

-

For a usage example see this module's documentation.

+

For a usage example see this module's documentation.

- Fields

blockheight: u32

Earliest block to rescan when looking for the wallet's transactions

-
label: String

Arbitrary label for the wallet

-

Implementations

impl WalletExport[src]

pub fn export_wallet<B: BlockchainMarker, D: BatchDatabase>(
    wallet: &Wallet<B, D>,
    label: &str,
    include_blockheight: bool
) -> Result<Self, &'static str>
[src]

Export a wallet

+ Fieldsblockheight: u32

Earliest block to rescan when looking for the wallet's transactions

+
label: String

Arbitrary label for the wallet

+

Implementations

impl WalletExport[src]

pub fn export_wallet<B: BlockchainMarker, D: BatchDatabase>(
    wallet: &Wallet<B, D>,
    label: &str,
    include_blockheight: bool
) -> Result<Self, &'static str>
[src]

Export a wallet

This function returns an error if it determines that the wallet's descriptor(s) are not supported by Bitcoin Core or don't follow the standard derivation paths defined by BIP44 and others.

@@ -15,22 +15,22 @@ and others.

for the oldest transaction it knows and use that as the earliest block to rescan.

If the database is empty or include_blockheight is false, the blockheight field returned will be 0.

-

pub fn descriptor(&self) -> String[src]

Return the external descriptor

-

pub fn change_descriptor(&self) -> Option<String>[src]

Return the internal descriptor, if present

-

Trait Implementations

impl Debug for WalletExport[src]

impl<'de> Deserialize<'de> for WalletExport[src]

impl FromStr for WalletExport[src]

type Err = Error

The associated error which can be returned from parsing.

-

impl Serialize for WalletExport[src]

impl ToString for WalletExport[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

pub fn descriptor(&self) -> String[src]

Return the external descriptor

+

pub fn change_descriptor(&self) -> Option<String>[src]

Return the internal descriptor, if present

+

Trait Implementations

impl Debug for WalletExport[src]

impl<'de> Deserialize<'de> for WalletExport[src]

impl FromStr for WalletExport[src]

type Err = Error

The associated error which can be returned from parsing.

+

impl Serialize for WalletExport[src]

impl ToString for WalletExport[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/index.html index 8109a88f81..bf698476e6 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/index.html @@ -1,5 +1,5 @@ bdk::wallet - Rust

[][src]Module bdk::wallet

Wallet

-

This module defines the [Wallet] structure.

+

This module defines the Wallet structure.

Modules

address_validator

Address validation callbacks

coin_selection

Coin selection

@@ -12,5 +12,5 @@

Traits

IsDust

Trait to check if a value is below the dust limit

Type Definitions

-
OfflineWallet

Type alias for a [Wallet] that uses [OfflineBlockchain]

+
OfflineWallet

Type alias for a Wallet that uses OfflineBlockchain

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/enum.SignerError.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/enum.SignerError.html index b7ee45eccf..efbc4c0b8b 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/enum.SignerError.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/enum.SignerError.html @@ -11,40 +11,40 @@ }

Signing error

Variants

-
MissingKey

The private key is missing for the required public key

-
UserCanceled

The user canceled the operation

-
MissingSighash

The sighash is missing in the PSBT input

-
InputIndexOutOfRange

Input index is out of range

-
MissingNonWitnessUtxo

The non_witness_utxo field of the transaction is required to sign this input

-
InvalidNonWitnessUtxo

The non_witness_utxo specified is invalid

-
MissingWitnessUtxo

The witness_utxo field of the transaction is required to sign this input

-
MissingWitnessScript

The witness_script field of the transaction is requied to sign this input

-
MissingHDKeypath

The fingerprint and derivation path are missing from the psbt input

-

Trait Implementations

impl Clone for SignerError[src]

impl Debug for SignerError[src]

impl Display for SignerError[src]

impl Eq for SignerError[src]

impl Error for SignerError[src]

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/enum.SignerId.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/enum.SignerId.html index 326c2242d2..299e47f7b9 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/enum.SignerId.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/enum.SignerId.html @@ -5,27 +5,27 @@ multiple of them

Variants

-
PkHash(<Pk as MiniscriptKey>::Hash)
Fingerprint(Fingerprint)

Trait Implementations

impl<Pk: Clone + MiniscriptKey> Clone for SignerId<Pk>[src]

impl<Pk: Debug + MiniscriptKey> Debug for SignerId<Pk>[src]

impl<Pk: Eq + MiniscriptKey> Eq for SignerId<Pk>[src]

impl From<Fingerprint> for SignerId<DescriptorPublicKey>[src]

impl From<Hash> for SignerId<DescriptorPublicKey>[src]

impl<Pk: Hash + MiniscriptKey> Hash for SignerId<Pk>[src]

impl<Pk: PartialEq + MiniscriptKey> PartialEq<SignerId<Pk>> for SignerId<Pk>[src]

impl<Pk: MiniscriptKey> StructuralEq for SignerId<Pk>[src]

impl<Pk: MiniscriptKey> StructuralPartialEq for SignerId<Pk>[src]

Auto Trait Implementations

impl<Pk> RefUnwindSafe for SignerId<Pk> where
    <Pk as MiniscriptKey>::Hash: RefUnwindSafe

impl<Pk> Send for SignerId<Pk> where
    <Pk as MiniscriptKey>::Hash: Send

impl<Pk> Sync for SignerId<Pk> where
    <Pk as MiniscriptKey>::Hash: Sync

impl<Pk> Unpin for SignerId<Pk> where
    <Pk as MiniscriptKey>::Hash: Unpin

impl<Pk> UnwindSafe for SignerId<Pk> where
    <Pk as MiniscriptKey>::Hash: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/index.html index 34dc35196d..6c88b63163 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/index.html @@ -1,6 +1,6 @@ bdk::wallet::signer - Rust

[][src]Module bdk::wallet::signer

Generalized signers

-

This module provides the ability to add customized signers to a Wallet -through the Wallet::add_signer function.

+

This module provides the ability to add customized signers to a Wallet +through the Wallet::add_signer function.

 #[derive(Debug)]
diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/struct.SignerOrdering.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/struct.SignerOrdering.html
index 366a6f003a..1813c89d08 100644
--- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/struct.SignerOrdering.html
+++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/struct.SignerOrdering.html
@@ -2,33 +2,33 @@
 

The default value is 100. Signers with an ordering above that will be called later, and they will thus see the partial signatures added to the transaction once they get to sign themselves.

-

Trait Implementations

impl Clone for SignerOrdering[src]

impl Debug for SignerOrdering[src]

impl Default for SignerOrdering[src]

impl Eq for SignerOrdering[src]

impl Ord for SignerOrdering[src]

impl PartialEq<SignerOrdering> for SignerOrdering[src]

impl PartialOrd<SignerOrdering> for SignerOrdering[src]

impl StructuralEq for SignerOrdering[src]

impl StructuralPartialEq for SignerOrdering[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-
\ No newline at end of file +

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/struct.SignersContainer.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/struct.SignersContainer.html index 96e0d58dd9..014f8c419a 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/struct.SignersContainer.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/struct.SignersContainer.html @@ -1,27 +1,27 @@ bdk::wallet::signer::SignersContainer - Rust

[][src]Struct bdk::wallet::signer::SignersContainer

pub struct SignersContainer<Pk: MiniscriptKey>(_);

Container for multiple signers

-

Implementations

impl SignersContainer<DescriptorPublicKey>[src]

pub fn as_key_map(&self) -> KeyMap[src]

impl<Pk: MiniscriptKey> SignersContainer<Pk>[src]

pub fn new() -> Self[src]

Default constructor

-

pub fn add_external(
    &mut self,
    id: SignerId<Pk>,
    ordering: SignerOrdering,
    signer: Arc<Box<dyn Signer>>
) -> Option<Arc<Box<dyn Signer>>>
[src]

Adds an external signer to the container for the specified id. Optionally returns the +

Implementations

impl SignersContainer<DescriptorPublicKey>[src]

pub fn as_key_map(&self) -> KeyMap[src]

impl<Pk: MiniscriptKey> SignersContainer<Pk>[src]

pub fn new() -> Self[src]

Default constructor

+

pub fn add_external(
    &mut self,
    id: SignerId<Pk>,
    ordering: SignerOrdering,
    signer: Arc<Box<dyn Signer>>
) -> Option<Arc<Box<dyn Signer>>>
[src]

Adds an external signer to the container for the specified id. Optionally returns the signer that was previosuly in the container, if any

-

pub fn remove(
    &mut self,
    id: SignerId<Pk>,
    ordering: SignerOrdering
) -> Option<Arc<Box<dyn Signer>>>
[src]

Removes a signer from the container and returns it

-

pub fn ids(&self) -> Vec<&SignerId<Pk>>[src]

Returns the list of identifiers of all the signers in the container

-

pub fn signers(&self) -> Vec<&Arc<Box<dyn Signer>>>[src]

Returns the list of signers in the container, sorted by lowest to highest ordering

-

pub fn find(&self, id: SignerId<Pk>) -> Option<&Arc<Box<dyn Signer>>>[src]

Finds the signer with lowest ordering for a given id in the container.

-

Trait Implementations

impl<Pk: Clone + MiniscriptKey> Clone for SignersContainer<Pk>[src]

impl<Pk: Debug + MiniscriptKey> Debug for SignersContainer<Pk>[src]

impl<Pk: Default + MiniscriptKey> Default for SignersContainer<Pk>[src]

impl From<HashMap<DescriptorPublicKey, DescriptorSecretKey, RandomState>> for SignersContainer<DescriptorPublicKey>[src]

Auto Trait Implementations

impl<Pk> !RefUnwindSafe for SignersContainer<Pk>

impl<Pk> !Send for SignersContainer<Pk>

impl<Pk> !Sync for SignersContainer<Pk>

impl<Pk> Unpin for SignersContainer<Pk> where
    <Pk as MiniscriptKey>::Hash: Unpin

impl<Pk> !UnwindSafe for SignersContainer<Pk>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

Trait Implementations

impl<Pk: Clone + MiniscriptKey> Clone for SignersContainer<Pk>[src]

impl<Pk: Debug + MiniscriptKey> Debug for SignersContainer<Pk>[src]

impl<Pk: Default + MiniscriptKey> Default for SignersContainer<Pk>[src]

impl From<HashMap<DescriptorPublicKey, DescriptorSecretKey, RandomState>> for SignersContainer<DescriptorPublicKey>[src]

Auto Trait Implementations

impl<Pk> !RefUnwindSafe for SignersContainer<Pk>

impl<Pk> !Send for SignersContainer<Pk>

impl<Pk> !Sync for SignersContainer<Pk>

impl<Pk> Unpin for SignersContainer<Pk> where
    <Pk as MiniscriptKey>::Hash: Unpin

impl<Pk> !UnwindSafe for SignersContainer<Pk>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

+

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/trait.Signer.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/trait.Signer.html index 43c457c266..3fc46e577c 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/trait.Signer.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/signer/trait.Signer.html @@ -5,19 +5,19 @@ fn descriptor_secret_key(&self) -> Option<DescriptorSecretKey> { ... } }

Trait for signers

This trait can be implemented to provide customized signers to the wallet. For an example see -this module's documentation.

+this module's documentation.

-

Required methods

fn sign(
    &self,
    psbt: &mut PartiallySignedTransaction,
    input_index: Option<usize>
) -> Result<(), SignerError>

Sign a PSBT

+

Required methods

fn sign(
    &self,
    psbt: &mut PartiallySignedTransaction,
    input_index: Option<usize>
) -> Result<(), SignerError>

Sign a PSBT

The input_index argument is only provided if the wallet doesn't declare to sign the whole -transaction in one go (see [Signer::sign_whole_tx]). Otherwise its value is None and +transaction in one go (see Signer::sign_whole_tx). Otherwise its value is None and can be ignored.

-

fn sign_whole_tx(&self) -> bool

Return whether or not the signer signs the whole transaction in one go instead of every +

fn sign_whole_tx(&self) -> bool

Return whether or not the signer signs the whole transaction in one go instead of every input individually

Loading content... -

Provided methods

fn descriptor_secret_key(&self) -> Option<DescriptorSecretKey>

Return the secret key for the signer

+

Provided methods

fn descriptor_secret_key(&self) -> Option<DescriptorSecretKey>

Return the secret key for the signer

This is used internally to reconstruct the original descriptor that may contain secrets. External signers that are meant to keep key isolated should just return None here (which is the default for this method, if not overridden).

Loading content... -

Implementations on Foreign Types

impl Signer for DescriptorXKey<ExtendedPrivKey>[src]

impl Signer for PrivateKey[src]

Loading content... +

Implementations on Foreign Types

impl Signer for DescriptorXKey<ExtendedPrivKey>[src]

impl Signer for PrivateKey[src]

Loading content...

Implementors

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/struct.Wallet.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/struct.Wallet.html index baccff0341..19f74f62e1 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/struct.Wallet.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/struct.Wallet.html @@ -1,39 +1,39 @@ bdk::wallet::Wallet - Rust

[][src]Struct bdk::wallet::Wallet

pub struct Wallet<B: BlockchainMarker, D: BatchDatabase> { /* fields omitted */ }

A Bitcoin wallet

-

A wallet takes descriptors, a database and a -blockchain and implements the basic functions that a Bitcoin wallets -needs to operate, like generating addresses, returning the balance, -creating transactions, etc.

-

A wallet can be either "online" if the blockchain type provided -implements [Blockchain], or "offline" [OfflineBlockchain] is used. Offline wallets only expose +

A wallet takes descriptors, a database and a +blockchain and implements the basic functions that a Bitcoin wallets +needs to operate, like generating addresses, returning the balance, +creating transactions, etc.

+

A wallet can be either "online" if the blockchain type provided +implements Blockchain, or "offline" OfflineBlockchain is used. Offline wallets only expose methods that don't need any interaction with the blockchain to work.

-

Implementations

impl<B, D> Wallet<B, D> where
    B: BlockchainMarker,
    D: BatchDatabase
[src]

pub fn new_offline(
    descriptor: &str,
    change_descriptor: Option<&str>,
    network: Network,
    database: D
) -> Result<Self, Error>
[src]

Create a new "offline" wallet

-

pub fn get_new_address(&self) -> Result<Address, Error>[src]

Return a newly generated address using the external descriptor

-

pub fn is_mine(&self, script: &Script) -> Result<bool, Error>[src]

Return whether or not a script is part of this wallet (either internal or external)

-

pub fn list_unspent(&self) -> Result<Vec<UTXO>, Error>[src]

Return the list of unspent outputs of this wallet

+

Implementations

impl<B, D> Wallet<B, D> where
    B: BlockchainMarker,
    D: BatchDatabase
[src]

pub fn new_offline(
    descriptor: &str,
    change_descriptor: Option<&str>,
    network: Network,
    database: D
) -> Result<Self, Error>
[src]

Create a new "offline" wallet

+

pub fn get_new_address(&self) -> Result<Address, Error>[src]

Return a newly generated address using the external descriptor

+

pub fn is_mine(&self, script: &Script) -> Result<bool, Error>[src]

Return whether or not a script is part of this wallet (either internal or external)

+

pub fn list_unspent(&self) -> Result<Vec<UTXO>, Error>[src]

Return the list of unspent outputs of this wallet

Note that this methods only operate on the internal database, which first needs to be -[Wallet::sync] manually.

-

pub fn list_transactions(
    &self,
    include_raw: bool
) -> Result<Vec<TransactionDetails>, Error>
[src]

Return the list of transactions made and received by the wallet

-

Optionally fill the [TransactionDetails::transaction] field with the raw transaction if +Wallet::sync manually.

+

pub fn list_transactions(
    &self,
    include_raw: bool
) -> Result<Vec<TransactionDetails>, Error>
[src]

Return the list of transactions made and received by the wallet

+

Optionally fill the TransactionDetails::transaction field with the raw transaction if include_raw is true.

Note that this methods only operate on the internal database, which first needs to be -[Wallet::sync] manually.

-

pub fn get_balance(&self) -> Result<u64, Error>[src]

Return the balance, meaning the sum of this wallet's unspent outputs' values

+Wallet::sync manually.

+

pub fn get_balance(&self) -> Result<u64, Error>[src]

Return the balance, meaning the sum of this wallet's unspent outputs' values

Note that this methods only operate on the internal database, which first needs to be -[Wallet::sync] manually.

-

pub fn add_signer(
    &mut self,
    script_type: ScriptType,
    id: SignerId<DescriptorPublicKey>,
    ordering: SignerOrdering,
    signer: Arc<Box<dyn Signer>>
)
[src]

Add an external signer

-

See the signer module for an example.

-

pub fn add_address_validator(
    &mut self,
    validator: Arc<Box<dyn AddressValidator>>
)
[src]

Add an address validator

-

See the address_validator module for an example.

-

pub fn create_tx<Cs: CoinSelectionAlgorithm>(
    &self,
    builder: TxBuilder<Cs>
) -> Result<(PSBT, TransactionDetails), Error>
[src]

Create a new transaction following the options specified in the builder

+Wallet::sync manually.

+

pub fn add_signer(
    &mut self,
    script_type: ScriptType,
    id: SignerId<DescriptorPublicKey>,
    ordering: SignerOrdering,
    signer: Arc<Box<dyn Signer>>
)
[src]

Add an external signer

+

See the signer module for an example.

+

pub fn add_address_validator(
    &mut self,
    validator: Arc<Box<dyn AddressValidator>>
)
[src]

Add an address validator

+

See the address_validator module for an example.

+

pub fn create_tx<Cs: CoinSelectionAlgorithm>(
    &self,
    builder: TxBuilder<Cs>
) -> Result<(PSBT, TransactionDetails), Error>
[src]

Create a new transaction following the options specified in the builder

Example

 let (psbt, details) = wallet.create_tx(
     TxBuilder::with_recipients(vec![(to_address.script_pubkey(), 50_000)])
 )?;
 // sign and broadcast ...
-

pub fn bump_fee<Cs: CoinSelectionAlgorithm>(
    &self,
    txid: &Txid,
    builder: TxBuilder<Cs>
) -> Result<(PSBT, TransactionDetails), Error>
[src]

Bump the fee of a transaction following the options specified in the builder

+

pub fn bump_fee<Cs: CoinSelectionAlgorithm>(
    &self,
    txid: &Txid,
    builder: TxBuilder<Cs>
) -> Result<(PSBT, TransactionDetails), Error>
[src]

Bump the fee of a transaction following the options specified in the builder

Return an error if the transaction is already confirmed or doesn't explicitly signal RBF.

-

NOTE: if the original transaction was made with [TxBuilder::send_all], the same +

NOTE: if the original transaction was made with TxBuilder::send_all, the same option must be enabled when bumping its fees to correctly reduce the only output's value to increase the fees.

Example

@@ -44,27 +44,27 @@ increase the fees.

TxBuilder::new().fee_rate(FeeRate::from_sat_per_vb(5.0)), )?; // sign and broadcast ...
-

pub fn sign(
    &self,
    psbt: PSBT,
    assume_height: Option<u32>
) -> Result<(PSBT, bool), Error>
[src]

Sign a transaction with all the wallet's signers, in the order specified by every signer's -[SignerOrdering]

+

pub fn sign(
    &self,
    psbt: PSBT,
    assume_height: Option<u32>
) -> Result<(PSBT, bool), Error>
[src]

Sign a transaction with all the wallet's signers, in the order specified by every signer's +SignerOrdering

Example

 let (signed_psbt, finalized) = wallet.sign(psbt, None)?;
-

pub fn policies(&self, script_type: ScriptType) -> Result<Option<Policy>, Error>[src]

Return the spending policies for the wallet's descriptor

-

pub fn public_descriptor(
    &self,
    script_type: ScriptType
) -> Result<Option<ExtendedDescriptor>, Error>
[src]

Return the "public" version of the wallet's descriptor, meaning a new descriptor that has +

pub fn policies(&self, script_type: ScriptType) -> Result<Option<Policy>, Error>[src]

Return the spending policies for the wallet's descriptor

+

pub fn public_descriptor(
    &self,
    script_type: ScriptType
) -> Result<Option<ExtendedDescriptor>, Error>
[src]

Return the "public" version of the wallet's descriptor, meaning a new descriptor that has the same structure but with every secret key removed

This can be used to build a watch-only version of a wallet

-

pub fn finalize_psbt(
    &self,
    psbt: PSBT,
    assume_height: Option<u32>
) -> Result<(PSBT, bool), Error>
[src]

Try to finalize a PSBT

-

impl<B, D> Wallet<B, D> where
    B: Blockchain,
    D: BatchDatabase
[src]

pub fn new(
    descriptor: &str,
    change_descriptor: Option<&str>,
    network: Network,
    database: D,
    client: B
) -> Result<Self, Error>
[src]

Create a new "online" wallet

-

pub fn sync<P: 'static + Progress>(
    &self,
    progress_update: P,
    max_address_param: Option<u32>
) -> Result<(), Error>
[src]

Sync the internal database with the blockchain

-

pub fn client(&self) -> Option<&B>[src]

Return a reference to the internal blockchain client

-

pub fn broadcast(&self, tx: Transaction) -> Result<Txid, Error>[src]

Broadcast a transaction to the network

-

Auto Trait Implementations

impl<B, D> !RefUnwindSafe for Wallet<B, D>

impl<B, D> !Send for Wallet<B, D>

impl<B, D> !Sync for Wallet<B, D>

impl<B, D> Unpin for Wallet<B, D> where
    B: Unpin,
    D: Unpin

impl<B, D> !UnwindSafe for Wallet<B, D>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

pub fn finalize_psbt(
    &self,
    psbt: PSBT,
    assume_height: Option<u32>
) -> Result<(PSBT, bool), Error>
[src]

Try to finalize a PSBT

+

impl<B, D> Wallet<B, D> where
    B: Blockchain,
    D: BatchDatabase
[src]

pub fn new(
    descriptor: &str,
    change_descriptor: Option<&str>,
    network: Network,
    database: D,
    client: B
) -> Result<Self, Error>
[src]

Create a new "online" wallet

+

pub fn sync<P: 'static + Progress>(
    &self,
    progress_update: P,
    max_address_param: Option<u32>
) -> Result<(), Error>
[src]

Sync the internal database with the blockchain

+

pub fn client(&self) -> Option<&B>[src]

Return a reference to the internal blockchain client

+

pub fn broadcast(&self, tx: Transaction) -> Result<Txid, Error>[src]

Broadcast a transaction to the network

+

Auto Trait Implementations

impl<B, D> !RefUnwindSafe for Wallet<B, D>

impl<B, D> !Send for Wallet<B, D>

impl<B, D> !Sync for Wallet<B, D>

impl<B, D> Unpin for Wallet<B, D> where
    B: Unpin,
    D: Unpin

impl<B, D> !UnwindSafe for Wallet<B, D>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/time/index.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/time/index.html index 17c3d7ce66..29bbc5d2b9 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/time/index.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/time/index.html @@ -2,7 +2,7 @@

This module provides a function to get the current timestamp that works on all the platforms supported by the library.

It can be useful to compare it with the timestamps found in -TransactionDetails.

+TransactionDetails.

Functions

get_timestamp

Return the current timestamp in seconds

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/trait.IsDust.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/trait.IsDust.html index 411b351028..42f509f659 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/trait.IsDust.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/trait.IsDust.html @@ -2,7 +2,7 @@ fn is_dust(&self) -> bool; }

Trait to check if a value is below the dust limit

-

Required methods

fn is_dust(&self) -> bool

Check whether or not a value is below dust limit

+

Required methods

fn is_dust(&self) -> bool

Check whether or not a value is below dust limit

Loading content... -

Implementations on Foreign Types

impl IsDust for u64[src]

Loading content... +

Implementations on Foreign Types

impl IsDust for u64[src]

Loading content...

Implementors

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/tx_builder/enum.ChangeSpendPolicy.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/tx_builder/enum.ChangeSpendPolicy.html index 41575bbd0e..90f24df408 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/tx_builder/enum.ChangeSpendPolicy.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/tx_builder/enum.ChangeSpendPolicy.html @@ -5,38 +5,38 @@ }

Policy regarding the use of change outputs when creating a transaction

Variants

-
ChangeAllowed

Use both change and non-change outputs (default)

-
OnlyChange

Only use change outputs (see [TxBuilder::only_spend_change])

-
ChangeForbidden

Only use non-change outputs (see [TxBuilder::do_not_spend_change])

-

Trait Implementations

impl Clone for ChangeSpendPolicy[src]

impl Copy for ChangeSpendPolicy[src]

impl Debug for ChangeSpendPolicy[src]

impl Default for ChangeSpendPolicy[src]

impl Eq for ChangeSpendPolicy[src]

impl Hash for ChangeSpendPolicy[src]

impl Ord for ChangeSpendPolicy[src]

impl PartialEq<ChangeSpendPolicy> for ChangeSpendPolicy[src]

impl PartialOrd<ChangeSpendPolicy> for ChangeSpendPolicy[src]

impl StructuralEq for ChangeSpendPolicy[src]

impl StructuralPartialEq for ChangeSpendPolicy[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/tx_builder/enum.TxOrdering.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/tx_builder/enum.TxOrdering.html index 18fcd110c2..61219124a8 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/tx_builder/enum.TxOrdering.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/tx_builder/enum.TxOrdering.html @@ -5,38 +5,38 @@ }

Ordering of the transaction's inputs and outputs

Variants

-
Shuffle

Randomized (default)

-
Untouched

Unchanged

-
BIP69Lexicographic

BIP69 / Lexicographic

-

Implementations

impl TxOrdering[src]

pub fn sort_tx(&self, tx: &mut Transaction)[src]

Trait Implementations

impl Clone for TxOrdering[src]

impl Copy for TxOrdering[src]

impl Debug for TxOrdering[src]

impl Default for TxOrdering[src]

impl Eq for TxOrdering[src]

impl Hash for TxOrdering[src]

impl Ord for TxOrdering[src]

impl PartialEq<TxOrdering> for TxOrdering[src]

impl PartialOrd<TxOrdering> for TxOrdering[src]

impl StructuralEq for TxOrdering[src]

impl StructuralPartialEq for TxOrdering[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

-

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/tx_builder/struct.TxBuilder.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/tx_builder/struct.TxBuilder.html index d12f019472..6ead2e15a2 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/tx_builder/struct.TxBuilder.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/tx_builder/struct.TxBuilder.html @@ -1,70 +1,70 @@ bdk::wallet::tx_builder::TxBuilder - Rust

[][src]Struct bdk::wallet::tx_builder::TxBuilder

pub struct TxBuilder<Cs: CoinSelectionAlgorithm> { /* fields omitted */ }

A transaction builder

This structure contains the configuration that the wallet must follow to build a transaction.

-

For an example see this module's documentation;

-

Implementations

impl TxBuilder<DefaultCoinSelectionAlgorithm>[src]

pub fn new() -> Self[src]

Create an empty builder

-

pub fn with_recipients(recipients: Vec<(Script, u64)>) -> Self[src]

Create a builder starting from a list of recipients

-

impl<Cs: CoinSelectionAlgorithm> TxBuilder<Cs>[src]

pub fn set_recipients(self, recipients: Vec<(Script, u64)>) -> Self[src]

Replace the recipients already added with a new list

-

pub fn add_recipient(self, script_pubkey: Script, amount: u64) -> Self[src]

Add a recipient to the internal list

-

pub fn send_all(self) -> Self[src]

Send all the selected utxos to a single output

+

For an example see this module's documentation;

+

Implementations

impl TxBuilder<DefaultCoinSelectionAlgorithm>[src]

pub fn new() -> Self[src]

Create an empty builder

+

pub fn with_recipients(recipients: Vec<(Script, u64)>) -> Self[src]

Create a builder starting from a list of recipients

+

impl<Cs: CoinSelectionAlgorithm> TxBuilder<Cs>[src]

pub fn set_recipients(self, recipients: Vec<(Script, u64)>) -> Self[src]

Replace the recipients already added with a new list

+

pub fn add_recipient(self, script_pubkey: Script, amount: u64) -> Self[src]

Add a recipient to the internal list

+

pub fn send_all(self) -> Self[src]

Send all the selected utxos to a single output

Adding more than one recipients with this option enabled will result in an error.

The value associated with the only recipient is irrelevant and will be replaced by the wallet.

-

pub fn fee_rate(self, fee_rate: FeeRate) -> Self[src]

Set a custom fee rate

-

pub fn policy_path(self, policy_path: BTreeMap<String, Vec<usize>>) -> Self[src]

Set the policy path to use while creating the transaction

+

pub fn fee_rate(self, fee_rate: FeeRate) -> Self[src]

Set a custom fee rate

+

pub fn policy_path(self, policy_path: BTreeMap<String, Vec<usize>>) -> Self[src]

Set the policy path to use while creating the transaction

This method accepts a map where the key is the policy node id (see -Policy::id) and the value is the list of the indexes of +Policy::id) and the value is the list of the indexes of the items that are intended to be satisfied from the policy node (see -SatisfiableItem::Thresh::items).

-

pub fn utxos(self, utxos: Vec<OutPoint>) -> Self[src]

Replace the internal list of utxos that must be spent with a new list

+SatisfiableItem::Thresh::items).

+

pub fn utxos(self, utxos: Vec<OutPoint>) -> Self[src]

Replace the internal list of utxos that must be spent with a new list

These have priority over the "unspendable" utxos, meaning that if a utxo is present both in the "utxos" and the "unspendable" list, it will be spent.

-

pub fn add_utxo(self, utxo: OutPoint) -> Self[src]

Add a utxo to the internal list of utxos that must be spent

+

pub fn add_utxo(self, utxo: OutPoint) -> Self[src]

Add a utxo to the internal list of utxos that must be spent

These have priority over the "unspendable" utxos, meaning that if a utxo is present both in the "utxos" and the "unspendable" list, it will be spent.

-

pub fn unspendable(self, unspendable: Vec<OutPoint>) -> Self[src]

Replace the internal list of unspendable utxos with a new list

-

It's important to note that the "must-be-spent" utxos added with [TxBuilder::utxos] and -[TxBuilder::add_utxo] have priority over these. See the docs of the two linked methods +

pub fn unspendable(self, unspendable: Vec<OutPoint>) -> Self[src]

Replace the internal list of unspendable utxos with a new list

+

It's important to note that the "must-be-spent" utxos added with TxBuilder::utxos and +TxBuilder::add_utxo have priority over these. See the docs of the two linked methods for more details.

-

pub fn add_unspendable(self, unspendable: OutPoint) -> Self[src]

Add a utxo to the internal list of unspendable utxos

-

It's important to note that the "must-be-spent" utxos added with [TxBuilder::utxos] and -[TxBuilder::add_utxo] have priority over this. See the docs of the two linked methods +

pub fn add_unspendable(self, unspendable: OutPoint) -> Self[src]

Add a utxo to the internal list of unspendable utxos

+

It's important to note that the "must-be-spent" utxos added with TxBuilder::utxos and +TxBuilder::add_utxo have priority over this. See the docs of the two linked methods for more details.

-

pub fn sighash(self, sighash: SigHashType) -> Self[src]

Sign with a specific sig hash

+

pub fn sighash(self, sighash: SigHashType) -> Self[src]

Sign with a specific sig hash

Use this option very carefully

-

pub fn ordering(self, ordering: TxOrdering) -> Self[src]

Choose the ordering for inputs and outputs of the transaction

-

pub fn nlocktime(self, locktime: u32) -> Self[src]

Use a specific nLockTime while creating the transaction

+

pub fn ordering(self, ordering: TxOrdering) -> Self[src]

Choose the ordering for inputs and outputs of the transaction

+

pub fn nlocktime(self, locktime: u32) -> Self[src]

Use a specific nLockTime while creating the transaction

This can cause conflicts if the wallet's descriptors contain an "after" (OP_CLTV) operator.

-

pub fn enable_rbf(self) -> Self[src]

Enable signaling RBF

+

pub fn enable_rbf(self) -> Self[src]

Enable signaling RBF

This will use the default nSequence value of 0xFFFFFFFD.

-

pub fn enable_rbf_with_sequence(self, nsequence: u32) -> Self[src]

Enable signaling RBF with a specific nSequence value

+

pub fn enable_rbf_with_sequence(self, nsequence: u32) -> Self[src]

Enable signaling RBF with a specific nSequence value

This can cause conflicts if the wallet's descriptors contain an "older" (OP_CSV) operator and the given nsequence is lower than the CSV value.

If the nsequence is higher than 0xFFFFFFFD an error will be thrown, since it would not be a valid nSequence to signal RBF.

-

pub fn version(self, version: u32) -> Self[src]

Build a transaction with a specific version

+

pub fn version(self, version: u32) -> Self[src]

Build a transaction with a specific version

The version should always be greater than 0 and greater than 1 if the wallet's descriptors contain an "older" (OP_CSV) operator.

-

pub fn do_not_spend_change(self) -> Self[src]

Do not spend change outputs

+

pub fn do_not_spend_change(self) -> Self[src]

Do not spend change outputs

This effectively adds all the change outputs to the "unspendable" list. See -[TxBuilder::unspendable].

-

pub fn only_spend_change(self) -> Self[src]

Only spend change outputs

+TxBuilder::unspendable.

+

pub fn only_spend_change(self) -> Self[src]

Only spend change outputs

This effectively adds all the non-change outputs to the "unspendable" list. See -[TxBuilder::unspendable].

-

pub fn change_policy(self, change_policy: ChangeSpendPolicy) -> Self[src]

Set a specific [ChangeSpendPolicy]. See [TxBuilder::do_not_spend_change] and -[TxBuilder::only_spend_change] for some shortcuts.

-

pub fn force_non_witness_utxo(self) -> Self[src]

Fill-in the psbt::Input::non_witness_utxo field even if the wallet only has SegWit +TxBuilder::unspendable.

+

pub fn change_policy(self, change_policy: ChangeSpendPolicy) -> Self[src]

pub fn force_non_witness_utxo(self) -> Self[src]

Fill-in the psbt::Input::non_witness_utxo field even if the wallet only has SegWit descriptors.

This is useful for signers which always require it, like Trezor hardware wallets.

-

pub fn coin_selection<P: CoinSelectionAlgorithm>(
    self,
    coin_selection: P
) -> TxBuilder<P>
[src]

Choose the coin selection algorithm

-

Overrides the DefaultCoinSelectionAlgorithm.

-

Trait Implementations

impl<Cs: Debug + CoinSelectionAlgorithm> Debug for TxBuilder<Cs>[src]

impl<Cs: Default + CoinSelectionAlgorithm> Default for TxBuilder<Cs>[src]

Auto Trait Implementations

impl<Cs> RefUnwindSafe for TxBuilder<Cs> where
    Cs: RefUnwindSafe

impl<Cs> Send for TxBuilder<Cs> where
    Cs: Send

impl<Cs> Sync for TxBuilder<Cs> where
    Cs: Sync

impl<Cs> Unpin for TxBuilder<Cs> where
    Cs: Unpin

impl<Cs> UnwindSafe for TxBuilder<Cs> where
    Cs: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

-

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

-

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

\ No newline at end of file +

pub fn coin_selection<P: CoinSelectionAlgorithm>(
    self,
    coin_selection: P
) -> TxBuilder<P>
[src]

Choose the coin selection algorithm

+

Overrides the DefaultCoinSelectionAlgorithm.

+

Trait Implementations

impl<Cs: Debug + CoinSelectionAlgorithm> Debug for TxBuilder<Cs>[src]

impl<Cs: Default + CoinSelectionAlgorithm> Default for TxBuilder<Cs>[src]

Auto Trait Implementations

impl<Cs> RefUnwindSafe for TxBuilder<Cs> where
    Cs: RefUnwindSafe

impl<Cs> Send for TxBuilder<Cs> where
    Cs: Send

impl<Cs> Sync for TxBuilder<Cs> where
    Cs: Sync

impl<Cs> Unpin for TxBuilder<Cs> where
    Cs: Unpin

impl<Cs> UnwindSafe for TxBuilder<Cs> where
    Cs: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

+

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

+

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

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/type.OfflineWallet.html b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/type.OfflineWallet.html index 7e279e53e2..0f4efcc6f5 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/type.OfflineWallet.html +++ b/static/docs-rs/bdk/0.1.0-beta.1/bdk/wallet/type.OfflineWallet.html @@ -1,2 +1,2 @@ -bdk::wallet::OfflineWallet - Rust

[][src]Type Definition bdk::wallet::OfflineWallet

type OfflineWallet<D> = Wallet<OfflineBlockchain, D>;

Type alias for a [Wallet] that uses [OfflineBlockchain]

+bdk::wallet::OfflineWallet - Rust

[][src]Type Definition bdk::wallet::OfflineWallet

type OfflineWallet<D> = Wallet<OfflineBlockchain, D>;

Type alias for a Wallet that uses OfflineBlockchain

\ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/dark.css b/static/docs-rs/bdk/0.1.0-beta.1/dark.css index 7f71607767..5df3fef0bc 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/dark.css +++ b/static/docs-rs/bdk/0.1.0-beta.1/dark.css @@ -1 +1 @@ -body{background-color:#353535;color:#ddd;}h1,h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod){color:#ddd;}h1.fqn{border-bottom-color:#d2d2d2;}h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod){border-bottom-color:#d2d2d2;}.in-band{background-color:#353535;}.invisible{background:rgba(0,0,0,0);}.docblock code,.docblock-short code{background-color:#2A2A2A;}pre{background-color:#2A2A2A;}.sidebar{background-color:#505050;}*{scrollbar-color:rgb(64,65,67) #717171;}.sidebar{scrollbar-color:rgba(32,34,37,.6) transparent;}::-webkit-scrollbar-track{background-color:#717171;}::-webkit-scrollbar-thumb{background-color:rgba(32,34,37,.6);}.sidebar::-webkit-scrollbar-track{background-color:#717171;}.sidebar::-webkit-scrollbar-thumb{background-color:rgba(32,34,37,.6);}.sidebar .current{background-color:#333;}.source .sidebar{background-color:#353535;}.sidebar .location{border-color:#fff;background:#575757;color:#DDD;}.sidebar .version{border-bottom-color:#DDD;}.sidebar-title{border-top-color:#777;border-bottom-color:#777;}.block a:hover{background:#444;}.line-numbers span{color:#3B91E2;}.line-numbers .line-highlighted{background-color:#0a042f !important;}.docblock h1,.docblock h2,.docblock h3,.docblock h4,.docblock h5{border-bottom-color:#DDD;}.docblock table,.docblock table td,.docblock table th{border-color:#ddd;}.content .method .where,.content .fn .where,.content .where.fmt-newline{color:#ddd;}.content .highlighted{color:#eee !important;background-color:#616161;}.content .highlighted a,.content .highlighted span{color:#eee !important;}.content .highlighted.trait{background-color:#013191;}.content .highlighted.traitalias{background-color:#013191;}.content .highlighted.mod,.content .highlighted.externcrate{background-color:#afc6e4;}.content .highlighted.mod{background-color:#803a1b;}.content .highlighted.externcrate{background-color:#396bac;}.content .highlighted.enum{background-color:#5b4e68;}.content .highlighted.struct{background-color:#194e9f;}.content .highlighted.union{background-color:#b7bd49;}.content .highlighted.fn,.content .highlighted.method,.content .highlighted.tymethod{background-color:#4950ed;}.content .highlighted.type{background-color:#38902c;}.content .highlighted.foreigntype{background-color:#b200d6;}.content .highlighted.attr,.content .highlighted.derive,.content .highlighted.macro{background-color:#217d1c;}.content .highlighted.constant,.content .highlighted.static{background-color:#0063cc;}.content .highlighted.primitive{background-color:#00708a;}.content .highlighted.keyword{background-color:#884719;}.content .stability::before{color:#ccc;}.content span.enum,.content a.enum,.block a.current.enum{color:#82b089;}.content span.struct,.content a.struct,.block a.current.struct{color:#2dbfb8;}.content span.type,.content a.type,.block a.current.type{color:#ff7f00;}.content span.foreigntype,.content a.foreigntype,.block a.current.foreigntype{color:#dd7de8;}.content span.attr,.content a.attr,.block a.current.attr,.content span.derive,.content a.derive,.block a.current.derive,.content span.macro,.content a.macro,.block a.current.macro{color:#09bd00;}.content span.union,.content a.union,.block a.current.union{color:#a6ae37;}.content span.constant,.content a.constant,.block a.current.constant,.content span.static,.content a.static,.block a.current.static{color:#82a5c9;}.content span.primitive,.content a.primitive,.block a.current.primitive{color:#43aec7;}.content span.externcrate,.content span.mod,.content a.mod,.block a.current.mod{color:#bda000;}.content span.trait,.content a.trait,.block a.current.trait{color:#b78cf2;}.content span.traitalias,.content a.traitalias,.block a.current.traitalias{color:#b397da;}.content span.fn,.content a.fn,.block a.current.fn,.content span.method,.content a.method,.block a.current.method,.content span.tymethod,.content a.tymethod,.block a.current.tymethod,.content .fnname{color:#2BAB63;}.content span.keyword,.content a.keyword,.block a.current.keyword{color:#de5249;}pre.rust .comment{color:#8d8d8b;}pre.rust .doccomment{color:#8ca375;}nav:not(.sidebar){border-bottom-color:#4e4e4e;}nav.main .current{border-top-color:#eee;border-bottom-color:#eee;}nav.main .separator{border-color:#eee;}a{color:#ddd;}.docblock:not(.type-decl) a:not(.srclink):not(.test-arrow),.docblock-short a:not(.srclink):not(.test-arrow),.stability a{color:#D2991D;}.stab.internal a{color:#304FFE;}a.test-arrow{color:#dedede;}.collapse-toggle{color:#999;}#crate-search{color:#111;background-color:#f0f0f0;border-color:#000;box-shadow:0 0 0 1px #000,0 0 0 2px transparent;}.search-input{color:#111;background-color:#f0f0f0;box-shadow:0 0 0 1px #000,0 0 0 2px transparent;}.search-input:focus{border-color:#008dfd;}.search-focus:disabled{background-color:#c5c4c4;}#crate-search+.search-input:focus{box-shadow:0 0 8px 4px #078dd8;}.module-item .stab{color:#ddd;}.stab.unstable{background:#FFF5D6;border-color:#FFC600;color:#2f2f2f;}.stab.internal{background:#FFB9B3;border-color:#B71C1C;color:#2f2f2f;}.stab.deprecated{background:#F3DFFF;border-color:#7F0087;color:#2f2f2f;}.stab.portability{background:#C4ECFF;border-color:#7BA5DB;color:#2f2f2f;}.stab.portability>code{color:#ddd;}#help>div{background:#4d4d4d;border-color:#bfbfbf;}#help dt{border-color:#bfbfbf;background:rgba(0,0,0,0);color:black;}.since{color:grey;}tr.result span.primitive::after,tr.result span.keyword::after{color:#ddd;}.line-numbers :target{background-color:transparent;}pre.rust .kw{color:#ab8ac1;}pre.rust .kw-2,pre.rust .prelude-ty{color:#769acb;}pre.rust .number,pre.rust .string{color:#83a300;}pre.rust .self,pre.rust .bool-val,pre.rust .prelude-val,pre.rust .attribute,pre.rust .attribute .ident{color:#ee6868;}pre.rust .macro,pre.rust .macro-nonterminal{color:#3E999F;}pre.rust .lifetime{color:#d97f26;}pre.rust .question-mark{color:#ff9011;}.example-wrap>pre.line-number{border-color:#4a4949;}a.test-arrow{background-color:rgba(78,139,202,0.2);}a.test-arrow:hover{background-color:#4e8bca;}.toggle-label{color:#999;}:target>code,:target>.in-band{background-color:#494a3d;}pre.compile_fail{border-left:2px solid rgba(255,0,0,.8);}pre.compile_fail:hover,.information:hover+pre.compile_fail{border-left:2px solid #f00;}pre.ignore{border-left:2px solid rgba(255,142,0,.6);}pre.ignore:hover,.information:hover+pre.ignore{border-left:2px solid #ff9200;}.tooltip.compile_fail{color:rgba(255,0,0,.8);}.information>.compile_fail:hover{color:#f00;}.tooltip.ignore{color:rgba(255,142,0,.6);}.information>.ignore:hover{color:#ff9200;}.search-failed a{color:#0089ff;}.tooltip .tooltiptext{background-color:#000;color:#fff;border-color:#000;}.tooltip .tooltiptext::after{border-color:transparent black transparent transparent;}#titles>div:not(.selected){background-color:#252525;border-top-color:#252525;}#titles>div:hover,#titles>div.selected{border-top-color:#0089ff;}#titles>div>div.count{color:#888;}@media (max-width:700px){.sidebar-menu{background-color:#505050;border-bottom-color:#e0e0e0;border-right-color:#e0e0e0;}.sidebar-elems{background-color:#505050;border-right-color:#000;}#sidebar-filler{background-color:#505050;border-bottom-color:#e0e0e0;}}kbd{color:#000;background-color:#fafbfc;border-color:#d1d5da;border-bottom-color:#c6cbd1;box-shadow-color:#c6cbd1;}#theme-picker,#settings-menu{border-color:#e0e0e0;background:#f0f0f0;}#theme-picker:hover,#theme-picker:focus,#settings-menu:hover,#settings-menu:focus{border-color:#ffb900;}#theme-choices{border-color:#e0e0e0;background-color:#353535;}#theme-choices>button:not(:first-child){border-top-color:#e0e0e0;}#theme-choices>button:hover,#theme-choices>button:focus{background-color:#4e4e4e;}@media (max-width:700px){#theme-picker{background:#f0f0f0;}}#all-types{background-color:#505050;}#all-types:hover{background-color:#606060;}.search-results td span.alias{color:#fff;}.search-results td span.grey{color:#ccc;}#sidebar-toggle{background-color:#565656;}#sidebar-toggle:hover{background-color:#676767;}#source-sidebar{background-color:#565656;}#source-sidebar>.title{border-bottom-color:#ccc;}div.files>a:hover,div.name:hover{background-color:#444;}div.files>.selected{background-color:#333;}.setting-line>.title{border-bottom-color:#ddd;} \ No newline at end of file +body{background-color:#353535;color:#ddd;}h1,h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod){color:#ddd;}h1.fqn{border-bottom-color:#d2d2d2;}h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod){border-bottom-color:#d2d2d2;}.in-band{background-color:#353535;}.invisible{background:rgba(0,0,0,0);}.docblock code,.docblock-short code{background-color:#2A2A2A;}pre{background-color:#2A2A2A;}.sidebar{background-color:#505050;}*{scrollbar-color:rgb(64,65,67) #717171;}.sidebar{scrollbar-color:rgba(32,34,37,.6) transparent;}::-webkit-scrollbar-track{background-color:#717171;}::-webkit-scrollbar-thumb{background-color:rgba(32,34,37,.6);}.sidebar::-webkit-scrollbar-track{background-color:#717171;}.sidebar::-webkit-scrollbar-thumb{background-color:rgba(32,34,37,.6);}.sidebar .current{background-color:#333;}.source .sidebar{background-color:#353535;}.sidebar .location{border-color:#fff;background:#575757;color:#DDD;}.sidebar .version{border-bottom-color:#DDD;}.sidebar-title{border-top-color:#777;border-bottom-color:#777;}.block a:hover{background:#444;}.line-numbers span{color:#3B91E2;}.line-numbers .line-highlighted{background-color:#0a042f !important;}.docblock h1,.docblock h2,.docblock h3,.docblock h4,.docblock h5{border-bottom-color:#DDD;}.docblock table,.docblock table td,.docblock table th{border-color:#ddd;}.content .method .where,.content .fn .where,.content .where.fmt-newline{color:#ddd;}.content .highlighted{color:#eee !important;background-color:#616161;}.content .highlighted a,.content .highlighted span{color:#eee !important;}.content .highlighted.trait{background-color:#013191;}.content .highlighted.traitalias{background-color:#013191;}.content .highlighted.mod,.content .highlighted.externcrate{background-color:#afc6e4;}.content .highlighted.mod{background-color:#803a1b;}.content .highlighted.externcrate{background-color:#396bac;}.content .highlighted.enum{background-color:#5b4e68;}.content .highlighted.struct{background-color:#194e9f;}.content .highlighted.union{background-color:#b7bd49;}.content .highlighted.fn,.content .highlighted.method,.content .highlighted.tymethod{background-color:#4950ed;}.content .highlighted.type{background-color:#38902c;}.content .highlighted.foreigntype{background-color:#b200d6;}.content .highlighted.attr,.content .highlighted.derive,.content .highlighted.macro{background-color:#217d1c;}.content .highlighted.constant,.content .highlighted.static{background-color:#0063cc;}.content .highlighted.primitive{background-color:#00708a;}.content .highlighted.keyword{background-color:#884719;}.content .stability::before{color:#ccc;}.content span.enum,.content a.enum,.block a.current.enum{color:#82b089;}.content span.struct,.content a.struct,.block a.current.struct{color:#2dbfb8;}.content span.type,.content a.type,.block a.current.type{color:#ff7f00;}.content span.foreigntype,.content a.foreigntype,.block a.current.foreigntype{color:#dd7de8;}.content span.attr,.content a.attr,.block a.current.attr,.content span.derive,.content a.derive,.block a.current.derive,.content span.macro,.content a.macro,.block a.current.macro{color:#09bd00;}.content span.union,.content a.union,.block a.current.union{color:#a6ae37;}.content span.constant,.content a.constant,.block a.current.constant,.content span.static,.content a.static,.block a.current.static{color:#82a5c9;}.content span.primitive,.content a.primitive,.block a.current.primitive{color:#43aec7;}.content span.externcrate,.content span.mod,.content a.mod,.block a.current.mod{color:#bda000;}.content span.trait,.content a.trait,.block a.current.trait{color:#b78cf2;}.content span.traitalias,.content a.traitalias,.block a.current.traitalias{color:#b397da;}.content span.fn,.content a.fn,.block a.current.fn,.content span.method,.content a.method,.block a.current.method,.content span.tymethod,.content a.tymethod,.block a.current.tymethod,.content .fnname{color:#2BAB63;}.content span.keyword,.content a.keyword,.block a.current.keyword{color:#de5249;}pre.rust .comment{color:#8d8d8b;}pre.rust .doccomment{color:#8ca375;}nav:not(.sidebar){border-bottom-color:#4e4e4e;}nav.main .current{border-top-color:#eee;border-bottom-color:#eee;}nav.main .separator{border-color:#eee;}a{color:#ddd;}.docblock:not(.type-decl) a:not(.srclink):not(.test-arrow),.docblock-short a:not(.srclink):not(.test-arrow),.stability a{color:#D2991D;}.stab.internal a{color:#304FFE;}a.test-arrow{color:#dedede;}.collapse-toggle{color:#999;}#crate-search{color:#111;background-color:#f0f0f0;border-color:#000;box-shadow:0 0 0 1px #000,0 0 0 2px transparent;}.search-input{color:#111;background-color:#f0f0f0;box-shadow:0 0 0 1px #000,0 0 0 2px transparent;}.search-input:focus{border-color:#008dfd;}.search-focus:disabled{background-color:#c5c4c4;}#crate-search+.search-input:focus{box-shadow:0 0 8px 4px #078dd8;}.module-item .stab{color:#ddd;}.stab.unstable{background:#FFF5D6;border-color:#FFC600;color:#2f2f2f;}.stab.internal{background:#FFB9B3;border-color:#B71C1C;color:#2f2f2f;}.stab.deprecated{background:#F3DFFF;border-color:#7F0087;color:#2f2f2f;}.stab.portability{background:#C4ECFF;border-color:#7BA5DB;color:#2f2f2f;}.stab.portability>code{color:#ddd;}#help>div{background:#4d4d4d;border-color:#bfbfbf;}#help dt{border-color:#bfbfbf;background:rgba(0,0,0,0);color:black;}.since{color:grey;}tr.result span.primitive::after,tr.result span.keyword::after{color:#ddd;}.line-numbers :target{background-color:transparent;}pre.rust .kw{color:#ab8ac1;}pre.rust .kw-2,pre.rust .prelude-ty{color:#769acb;}pre.rust .number,pre.rust .string{color:#83a300;}pre.rust .self,pre.rust .bool-val,pre.rust .prelude-val,pre.rust .attribute,pre.rust .attribute .ident{color:#ee6868;}pre.rust .macro,pre.rust .macro-nonterminal{color:#3E999F;}pre.rust .lifetime{color:#d97f26;}pre.rust .question-mark{color:#ff9011;}.example-wrap>pre.line-number{border-color:#4a4949;}a.test-arrow{background-color:rgba(78,139,202,0.2);}a.test-arrow:hover{background-color:#4e8bca;}.toggle-label{color:#999;}:target>code,:target>.in-band{background-color:#494a3d;}pre.compile_fail{border-left:2px solid rgba(255,0,0,.8);}pre.compile_fail:hover,.information:hover+pre.compile_fail{border-left:2px solid #f00;}pre.should_panic{border-left:2px solid rgba(255,0,0,.8);}pre.should_panic:hover,.information:hover+pre.should_panic{border-left:2px solid #f00;}pre.ignore{border-left:2px solid rgba(255,142,0,.6);}pre.ignore:hover,.information:hover+pre.ignore{border-left:2px solid #ff9200;}.tooltip.compile_fail{color:rgba(255,0,0,.8);}.information>.compile_fail:hover{color:#f00;}.tooltip.should_panic{color:rgba(255,0,0,.8);}.information>.should_panic:hover{color:#f00;}.tooltip.ignore{color:rgba(255,142,0,.6);}.information>.ignore:hover{color:#ff9200;}.search-failed a{color:#0089ff;}.tooltip .tooltiptext{background-color:#000;color:#fff;border-color:#000;}.tooltip .tooltiptext::after{border-color:transparent black transparent transparent;}#titles>div:not(.selected){background-color:#252525;border-top-color:#252525;}#titles>div:hover,#titles>div.selected{border-top-color:#0089ff;}#titles>div>div.count{color:#888;}@media (max-width:700px){.sidebar-menu{background-color:#505050;border-bottom-color:#e0e0e0;border-right-color:#e0e0e0;}.sidebar-elems{background-color:#505050;border-right-color:#000;}#sidebar-filler{background-color:#505050;border-bottom-color:#e0e0e0;}}kbd{color:#000;background-color:#fafbfc;border-color:#d1d5da;border-bottom-color:#c6cbd1;box-shadow-color:#c6cbd1;}#theme-picker,#settings-menu{border-color:#e0e0e0;background:#f0f0f0;}#theme-picker:hover,#theme-picker:focus,#settings-menu:hover,#settings-menu:focus{border-color:#ffb900;}#theme-choices{border-color:#e0e0e0;background-color:#353535;}#theme-choices>button:not(:first-child){border-top-color:#e0e0e0;}#theme-choices>button:hover,#theme-choices>button:focus{background-color:#4e4e4e;}@media (max-width:700px){#theme-picker{background:#f0f0f0;}}#all-types{background-color:#505050;}#all-types:hover{background-color:#606060;}.search-results td span.alias{color:#fff;}.search-results td span.grey{color:#ccc;}#sidebar-toggle{background-color:#565656;}#sidebar-toggle:hover{background-color:#676767;}#source-sidebar{background-color:#565656;}#source-sidebar>.title{border-bottom-color:#ccc;}div.files>a:hover,div.name:hover{background-color:#444;}div.files>.selected{background-color:#333;}.setting-line>.title{border-bottom-color:#ddd;} \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/implementors/core/convert/trait.From.js b/static/docs-rs/bdk/0.1.0-beta.1/implementors/core/convert/trait.From.js index 54b9db1def..2f08ca5d8e 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/implementors/core/convert/trait.From.js +++ b/static/docs-rs/bdk/0.1.0-beta.1/implementors/core/convert/trait.From.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<AddressValidatorError> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<PolicyError> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<SignerError> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<EsploraError> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<CompactFiltersError> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Client> for ElectrumBlockchain","synthetic":false,"types":["bdk::blockchain::electrum::ElectrumBlockchain"]},{"text":"impl From<Error> for EsploraError","synthetic":false,"types":["bdk::blockchain::esplora::EsploraError"]},{"text":"impl From<ParseIntError> for EsploraError","synthetic":false,"types":["bdk::blockchain::esplora::EsploraError"]},{"text":"impl From<Error> for EsploraError","synthetic":false,"types":["bdk::blockchain::esplora::EsploraError"]},{"text":"impl From<Error> for CompactFiltersError","synthetic":false,"types":["bdk::blockchain::compact_filters::CompactFiltersError"]},{"text":"impl From<Error> for CompactFiltersError","synthetic":false,"types":["bdk::blockchain::compact_filters::CompactFiltersError"]},{"text":"impl From<Error> for CompactFiltersError","synthetic":false,"types":["bdk::blockchain::compact_filters::CompactFiltersError"]},{"text":"impl From<SystemTimeError> for CompactFiltersError","synthetic":false,"types":["bdk::blockchain::compact_filters::CompactFiltersError"]},{"text":"impl From<Error> for CompactFiltersError","synthetic":false,"types":["bdk::blockchain::compact_filters::CompactFiltersError"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::descriptor::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::descriptor::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::descriptor::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::descriptor::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::descriptor::error::Error"]},{"text":"impl From<PolicyError> for Error","synthetic":false,"types":["bdk::descriptor::error::Error"]},{"text":"impl From<bool> for Satisfaction","synthetic":false,"types":["bdk::descriptor::policy::Satisfaction"]},{"text":"impl From<SatisfiableItem> for Policy","synthetic":false,"types":["bdk::descriptor::policy::Policy"]},{"text":"impl From<Hash> for SignerId<DescriptorPublicKey>","synthetic":false,"types":["bdk::wallet::signer::SignerId"]},{"text":"impl From<Fingerprint> for SignerId<DescriptorPublicKey>","synthetic":false,"types":["bdk::wallet::signer::SignerId"]},{"text":"impl From<HashMap<DescriptorPublicKey, DescriptorSecretKey, RandomState>> for SignersContainer<DescriptorPublicKey>","synthetic":false,"types":["bdk::wallet::signer::SignersContainer"]}]; +implementors["bdk"] = [{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<AddressValidatorError> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<PolicyError> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<SignerError> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<EsploraError> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<CompactFiltersError> for Error","synthetic":false,"types":["bdk::error::Error"]},{"text":"impl From<Client> for ElectrumBlockchain","synthetic":false,"types":["bdk::blockchain::electrum::ElectrumBlockchain"]},{"text":"impl From<Error> for EsploraError","synthetic":false,"types":["bdk::blockchain::esplora::EsploraError"]},{"text":"impl From<ParseIntError> for EsploraError","synthetic":false,"types":["bdk::blockchain::esplora::EsploraError"]},{"text":"impl From<Error> for EsploraError","synthetic":false,"types":["bdk::blockchain::esplora::EsploraError"]},{"text":"impl From<Error> for CompactFiltersError","synthetic":false,"types":["bdk::blockchain::compact_filters::CompactFiltersError"]},{"text":"impl From<Error> for CompactFiltersError","synthetic":false,"types":["bdk::blockchain::compact_filters::CompactFiltersError"]},{"text":"impl From<Error> for CompactFiltersError","synthetic":false,"types":["bdk::blockchain::compact_filters::CompactFiltersError"]},{"text":"impl From<SystemTimeError> for CompactFiltersError","synthetic":false,"types":["bdk::blockchain::compact_filters::CompactFiltersError"]},{"text":"impl From<Error> for CompactFiltersError","synthetic":false,"types":["bdk::blockchain::compact_filters::CompactFiltersError"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::descriptor::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::descriptor::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::descriptor::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::descriptor::error::Error"]},{"text":"impl From<Error> for Error","synthetic":false,"types":["bdk::descriptor::error::Error"]},{"text":"impl From<PolicyError> for Error","synthetic":false,"types":["bdk::descriptor::error::Error"]},{"text":"impl From<bool> for Satisfaction","synthetic":false,"types":["bdk::descriptor::policy::Satisfaction"]},{"text":"impl From<SatisfiableItem> for Policy","synthetic":false,"types":["bdk::descriptor::policy::Policy"]},{"text":"impl From<Hash> for SignerId<DescriptorPublicKey>","synthetic":false,"types":["bdk::wallet::signer::SignerId"]},{"text":"impl From<Fingerprint> for SignerId<DescriptorPublicKey>","synthetic":false,"types":["bdk::wallet::signer::SignerId"]},{"text":"impl From<HashMap<DescriptorPublicKey, DescriptorSecretKey, RandomState>> for SignersContainer<DescriptorPublicKey>","synthetic":false,"types":["bdk::wallet::signer::SignersContainer"]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/implementors/serde/de/trait.Deserialize.js b/static/docs-rs/bdk/0.1.0-beta.1/implementors/serde/de/trait.Deserialize.js index 8053d7effa..b54d94401d 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/implementors/serde/de/trait.Deserialize.js +++ b/static/docs-rs/bdk/0.1.0-beta.1/implementors/serde/de/trait.Deserialize.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl<'de> Deserialize<'de> for ScriptType","synthetic":false,"types":["bdk::types::ScriptType"]},{"text":"impl<'de> Deserialize<'de> for UTXO","synthetic":false,"types":["bdk::types::UTXO"]},{"text":"impl<'de> Deserialize<'de> for TransactionDetails","synthetic":false,"types":["bdk::types::TransactionDetails"]},{"text":"impl<'de> Deserialize<'de> for WalletExport","synthetic":false,"types":["bdk::wallet::export::WalletExport"]}]; +implementors["bdk"] = [{"text":"impl<'de> Deserialize<'de> for ScriptType","synthetic":false,"types":["bdk::types::ScriptType"]},{"text":"impl<'de> Deserialize<'de> for UTXO","synthetic":false,"types":["bdk::types::UTXO"]},{"text":"impl<'de> Deserialize<'de> for TransactionDetails","synthetic":false,"types":["bdk::types::TransactionDetails"]},{"text":"impl<'de> Deserialize<'de> for WalletExport","synthetic":false,"types":["bdk::wallet::export::WalletExport"]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/implementors/serde/ser/trait.Serialize.js b/static/docs-rs/bdk/0.1.0-beta.1/implementors/serde/ser/trait.Serialize.js index f6b22d25bf..87f639e005 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/implementors/serde/ser/trait.Serialize.js +++ b/static/docs-rs/bdk/0.1.0-beta.1/implementors/serde/ser/trait.Serialize.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl Serialize for PKOrF","synthetic":false,"types":["bdk::descriptor::policy::PKOrF"]},{"text":"impl Serialize for SatisfiableItem","synthetic":false,"types":["bdk::descriptor::policy::SatisfiableItem"]},{"text":"impl Serialize for Satisfaction","synthetic":false,"types":["bdk::descriptor::policy::Satisfaction"]},{"text":"impl Serialize for Policy","synthetic":false,"types":["bdk::descriptor::policy::Policy"]},{"text":"impl Serialize for Condition","synthetic":false,"types":["bdk::descriptor::policy::Condition"]},{"text":"impl Serialize for ScriptType","synthetic":false,"types":["bdk::types::ScriptType"]},{"text":"impl Serialize for UTXO","synthetic":false,"types":["bdk::types::UTXO"]},{"text":"impl Serialize for TransactionDetails","synthetic":false,"types":["bdk::types::TransactionDetails"]},{"text":"impl Serialize for WalletExport","synthetic":false,"types":["bdk::wallet::export::WalletExport"]}]; +implementors["bdk"] = [{"text":"impl Serialize for PKOrF","synthetic":false,"types":["bdk::descriptor::policy::PKOrF"]},{"text":"impl Serialize for SatisfiableItem","synthetic":false,"types":["bdk::descriptor::policy::SatisfiableItem"]},{"text":"impl Serialize for Satisfaction","synthetic":false,"types":["bdk::descriptor::policy::Satisfaction"]},{"text":"impl Serialize for Policy","synthetic":false,"types":["bdk::descriptor::policy::Policy"]},{"text":"impl Serialize for Condition","synthetic":false,"types":["bdk::descriptor::policy::Condition"]},{"text":"impl Serialize for ScriptType","synthetic":false,"types":["bdk::types::ScriptType"]},{"text":"impl Serialize for UTXO","synthetic":false,"types":["bdk::types::UTXO"]},{"text":"impl Serialize for TransactionDetails","synthetic":false,"types":["bdk::types::TransactionDetails"]},{"text":"impl Serialize for WalletExport","synthetic":false,"types":["bdk::wallet::export::WalletExport"]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/light.css b/static/docs-rs/bdk/0.1.0-beta.1/light.css index d74d60dcf8..824281ebe9 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/light.css +++ b/static/docs-rs/bdk/0.1.0-beta.1/light.css @@ -1 +1 @@ - body{background-color:white;color:black;}h1,h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod){color:black;}h1.fqn{border-bottom-color:#D5D5D5;}h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod){border-bottom-color:#DDDDDD;}.in-band{background-color:white;}.invisible{background:rgba(0,0,0,0);}.docblock code,.docblock-short code{background-color:#F5F5F5;}pre{background-color:#F5F5F5;}.sidebar{background-color:#F1F1F1;}*{scrollbar-color:rgba(36,37,39,0.6) #e6e6e6;}.sidebar{scrollbar-color:rgba(36,37,39,0.6) #d9d9d9;}::-webkit-scrollbar-track{background-color:#ecebeb;}::-webkit-scrollbar-thumb{background-color:rgba(36,37,39,0.6);}.sidebar::-webkit-scrollbar-track{background-color:#dcdcdc;}.sidebar::-webkit-scrollbar-thumb{background-color:rgba(36,37,39,0.6);}.sidebar .current{background-color:#fff;}.source .sidebar{background-color:#fff;}.sidebar .location{border-color:#000;background-color:#fff;color:#333;}.sidebar .version{border-bottom-color:#DDD;}.sidebar-title{border-top-color:#777;border-bottom-color:#777;}.block a:hover{background:#F5F5F5;}.line-numbers span{color:#c67e2d;}.line-numbers .line-highlighted{background-color:#f6fdb0 !important;}.docblock h1,.docblock h2,.docblock h3,.docblock h4,.docblock h5{border-bottom-color:#ddd;}.docblock table,.docblock table td,.docblock table th{border-color:#ddd;}.content .method .where,.content .fn .where,.content .where.fmt-newline{color:#4E4C4C;}.content .highlighted{color:#000 !important;background-color:#ccc;}.content .highlighted a,.content .highlighted span{color:#000 !important;}.content .highlighted.trait{background-color:#c7b6ff;}.content .highlighted.traitalias{background-color:#c7b6ff;}.content .highlighted.mod,.content .highlighted.externcrate{background-color:#afc6e4;}.content .highlighted.enum{background-color:#b4d1b9;}.content .highlighted.struct{background-color:#e7b1a0;}.content .highlighted.union{background-color:#b7bd49;}.content .highlighted.fn,.content .highlighted.method,.content .highlighted.tymethod{background-color:#c6afb3;}.content .highlighted.type{background-color:#ffc891;}.content .highlighted.foreigntype{background-color:#f5c4ff;}.content .highlighted.attr,.content .highlighted.derive,.content .highlighted.macro{background-color:#8ce488;}.content .highlighted.constant,.content .highlighted.static{background-color:#c3e0ff;}.content .highlighted.primitive{background-color:#9aecff;}.content .highlighted.keyword{background-color:#f99650;}.content .stability::before{color:#ccc;}.content span.enum,.content a.enum,.block a.current.enum{color:#508157;}.content span.struct,.content a.struct,.block a.current.struct{color:#ad448e;}.content span.type,.content a.type,.block a.current.type{color:#ba5d00;}.content span.foreigntype,.content a.foreigntype,.block a.current.foreigntype{color:#cd00e2;}.content span.attr,.content a.attr,.block a.current.attr,.content span.derive,.content a.derive,.block a.current.derive,.content span.macro,.content a.macro,.block a.current.macro{color:#068000;}.content span.union,.content a.union,.block a.current.union{color:#767b27;}.content span.constant,.content a.constant,.block a.current.constant,.content span.static,.content a.static,.block a.current.static{color:#546e8a;}.content span.primitive,.content a.primitive,.block a.current.primitive{color:#2c8093;}.content span.externcrate,.content span.mod,.content a.mod,.block a.current.mod{color:#4d76ae;}.content span.trait,.content a.trait,.block a.current.trait{color:#7c5af3;}.content span.traitalias,.content a.traitalias,.block a.current.traitalias{color:#6841f1;}.content span.fn,.content a.fn,.block a.current.fn,.content span.method,.content a.method,.block a.current.method,.content span.tymethod,.content a.tymethod,.block a.current.tymethod,.content .fnname{color:#9a6e31;}.content span.keyword,.content a.keyword,.block a.current.keyword{color:#de5249;}pre.rust .comment{color:#8E908C;}pre.rust .doccomment{color:#4D4D4C;}nav:not(.sidebar){border-bottom-color:#e0e0e0;}nav.main .current{border-top-color:#000;border-bottom-color:#000;}nav.main .separator{border:1px solid #000;}a{color:#000;}.docblock:not(.type-decl) a:not(.srclink):not(.test-arrow),.docblock-short a:not(.srclink):not(.test-arrow),.stability a{color:#3873AD;}.stab.internal a{color:#304FFE;}a.test-arrow{color:#f5f5f5;}.collapse-toggle{color:#999;}#crate-search{color:#555;background-color:white;border-color:#e0e0e0;box-shadow:0 0 0 1px #e0e0e0,0 0 0 2px transparent;}.search-input{color:#555;background-color:white;box-shadow:0 0 0 1px #e0e0e0,0 0 0 2px transparent;}.search-input:focus{border-color:#66afe9;}.search-focus:disabled{background-color:#e6e6e6;}#crate-search+.search-input:focus{box-shadow:0 0 8px #078dd8;}.module-item .stab{color:#000;}.stab.unstable{background:#FFF5D6;border-color:#FFC600;}.stab.internal{background:#FFB9B3;border-color:#B71C1C;}.stab.deprecated{background:#F3DFFF;border-color:#7F0087;}.stab.portability{background:#C4ECFF;border-color:#7BA5DB;}.stab.portability>code{color:#000;}#help>div{background:#e9e9e9;border-color:#bfbfbf;}.since{color:grey;}tr.result span.primitive::after,tr.result span.keyword::after{color:black;}.line-numbers :target{background-color:transparent;}pre.rust .kw{color:#8959A8;}pre.rust .kw-2,pre.rust .prelude-ty{color:#4271AE;}pre.rust .number,pre.rust .string{color:#718C00;}pre.rust .self,pre.rust .bool-val,pre.rust .prelude-val,pre.rust .attribute,pre.rust .attribute .ident{color:#C82829;}pre.rust .macro,pre.rust .macro-nonterminal{color:#3E999F;}pre.rust .lifetime{color:#B76514;}pre.rust .question-mark{color:#ff9011;}.example-wrap>pre.line-number{border-color:#c7c7c7;}a.test-arrow{background-color:rgba(78,139,202,0.2);}a.test-arrow:hover{background-color:#4e8bca;}.toggle-label{color:#999;}:target>code,:target>.in-band{background:#FDFFD3;}pre.compile_fail{border-left:2px solid rgba(255,0,0,.5);}pre.compile_fail:hover,.information:hover+pre.compile_fail{border-left:2px solid #f00;}pre.ignore{border-left:2px solid rgba(255,142,0,.6);}pre.ignore:hover,.information:hover+pre.ignore{border-left:2px solid #ff9200;}.tooltip.compile_fail{color:rgba(255,0,0,.5);}.information>.compile_fail:hover{color:#f00;}.tooltip.ignore{color:rgba(255,142,0,.6);}.information>.ignore:hover{color:#ff9200;}.search-failed a{color:#0089ff;}.tooltip .tooltiptext{background-color:#000;color:#fff;}.tooltip .tooltiptext::after{border-color:transparent black transparent transparent;}#titles>div:not(.selected){background-color:#e6e6e6;border-top-color:#e6e6e6;}#titles>div:hover,#titles>div.selected{border-top-color:#0089ff;}#titles>div>div.count{color:#888;}@media (max-width:700px){.sidebar-menu{background-color:#F1F1F1;border-bottom-color:#e0e0e0;border-right-color:#e0e0e0;}.sidebar-elems{background-color:#F1F1F1;border-right-color:#000;}#sidebar-filler{background-color:#F1F1F1;border-bottom-color:#e0e0e0;}}kbd{color:#000;background-color:#fafbfc;border-color:#d1d5da;border-bottom-color:#c6cbd1;box-shadow-color:#c6cbd1;}#theme-picker,#settings-menu{border-color:#e0e0e0;background-color:#fff;}#theme-picker:hover,#theme-picker:focus,#settings-menu:hover,#settings-menu:focus{border-color:#717171;}#theme-choices{border-color:#ccc;background-color:#fff;}#theme-choices>button:not(:first-child){border-top-color:#e0e0e0;}#theme-choices>button:hover,#theme-choices>button:focus{background-color:#eee;}@media (max-width:700px){#theme-picker{background:#fff;}}#all-types{background-color:#fff;}#all-types:hover{background-color:#f9f9f9;}.search-results td span.alias{color:#000;}.search-results td span.grey{color:#999;}#sidebar-toggle{background-color:#F1F1F1;}#sidebar-toggle:hover{background-color:#E0E0E0;}#source-sidebar{background-color:#F1F1F1;}#source-sidebar>.title{border-bottom-color:#ccc;}div.files>a:hover,div.name:hover{background-color:#E0E0E0;}div.files>.selected{background-color:#fff;}.setting-line>.title{border-bottom-color:#D5D5D5;} \ No newline at end of file + body{background-color:white;color:black;}h1,h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod){color:black;}h1.fqn{border-bottom-color:#D5D5D5;}h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod){border-bottom-color:#DDDDDD;}.in-band{background-color:white;}.invisible{background:rgba(0,0,0,0);}.docblock code,.docblock-short code{background-color:#F5F5F5;}pre{background-color:#F5F5F5;}.sidebar{background-color:#F1F1F1;}*{scrollbar-color:rgba(36,37,39,0.6) #e6e6e6;}.sidebar{scrollbar-color:rgba(36,37,39,0.6) #d9d9d9;}::-webkit-scrollbar-track{background-color:#ecebeb;}::-webkit-scrollbar-thumb{background-color:rgba(36,37,39,0.6);}.sidebar::-webkit-scrollbar-track{background-color:#dcdcdc;}.sidebar::-webkit-scrollbar-thumb{background-color:rgba(36,37,39,0.6);}.sidebar .current{background-color:#fff;}.source .sidebar{background-color:#fff;}.sidebar .location{border-color:#000;background-color:#fff;color:#333;}.sidebar .version{border-bottom-color:#DDD;}.sidebar-title{border-top-color:#777;border-bottom-color:#777;}.block a:hover{background:#F5F5F5;}.line-numbers span{color:#c67e2d;}.line-numbers .line-highlighted{background-color:#f6fdb0 !important;}.docblock h1,.docblock h2,.docblock h3,.docblock h4,.docblock h5{border-bottom-color:#ddd;}.docblock table,.docblock table td,.docblock table th{border-color:#ddd;}.content .method .where,.content .fn .where,.content .where.fmt-newline{color:#4E4C4C;}.content .highlighted{color:#000 !important;background-color:#ccc;}.content .highlighted a,.content .highlighted span{color:#000 !important;}.content .highlighted.trait{background-color:#c7b6ff;}.content .highlighted.traitalias{background-color:#c7b6ff;}.content .highlighted.mod,.content .highlighted.externcrate{background-color:#afc6e4;}.content .highlighted.enum{background-color:#b4d1b9;}.content .highlighted.struct{background-color:#e7b1a0;}.content .highlighted.union{background-color:#b7bd49;}.content .highlighted.fn,.content .highlighted.method,.content .highlighted.tymethod{background-color:#c6afb3;}.content .highlighted.type{background-color:#ffc891;}.content .highlighted.foreigntype{background-color:#f5c4ff;}.content .highlighted.attr,.content .highlighted.derive,.content .highlighted.macro{background-color:#8ce488;}.content .highlighted.constant,.content .highlighted.static{background-color:#c3e0ff;}.content .highlighted.primitive{background-color:#9aecff;}.content .highlighted.keyword{background-color:#f99650;}.content .stability::before{color:#ccc;}.content span.enum,.content a.enum,.block a.current.enum{color:#508157;}.content span.struct,.content a.struct,.block a.current.struct{color:#ad448e;}.content span.type,.content a.type,.block a.current.type{color:#ba5d00;}.content span.foreigntype,.content a.foreigntype,.block a.current.foreigntype{color:#cd00e2;}.content span.attr,.content a.attr,.block a.current.attr,.content span.derive,.content a.derive,.block a.current.derive,.content span.macro,.content a.macro,.block a.current.macro{color:#068000;}.content span.union,.content a.union,.block a.current.union{color:#767b27;}.content span.constant,.content a.constant,.block a.current.constant,.content span.static,.content a.static,.block a.current.static{color:#546e8a;}.content span.primitive,.content a.primitive,.block a.current.primitive{color:#2c8093;}.content span.externcrate,.content span.mod,.content a.mod,.block a.current.mod{color:#4d76ae;}.content span.trait,.content a.trait,.block a.current.trait{color:#7c5af3;}.content span.traitalias,.content a.traitalias,.block a.current.traitalias{color:#6841f1;}.content span.fn,.content a.fn,.block a.current.fn,.content span.method,.content a.method,.block a.current.method,.content span.tymethod,.content a.tymethod,.block a.current.tymethod,.content .fnname{color:#9a6e31;}.content span.keyword,.content a.keyword,.block a.current.keyword{color:#de5249;}pre.rust .comment{color:#8E908C;}pre.rust .doccomment{color:#4D4D4C;}nav:not(.sidebar){border-bottom-color:#e0e0e0;}nav.main .current{border-top-color:#000;border-bottom-color:#000;}nav.main .separator{border:1px solid #000;}a{color:#000;}.docblock:not(.type-decl) a:not(.srclink):not(.test-arrow),.docblock-short a:not(.srclink):not(.test-arrow),.stability a{color:#3873AD;}.stab.internal a{color:#304FFE;}a.test-arrow{color:#f5f5f5;}.collapse-toggle{color:#999;}#crate-search{color:#555;background-color:white;border-color:#e0e0e0;box-shadow:0 0 0 1px #e0e0e0,0 0 0 2px transparent;}.search-input{color:#555;background-color:white;box-shadow:0 0 0 1px #e0e0e0,0 0 0 2px transparent;}.search-input:focus{border-color:#66afe9;}.search-focus:disabled{background-color:#e6e6e6;}#crate-search+.search-input:focus{box-shadow:0 0 8px #078dd8;}.module-item .stab{color:#000;}.stab.unstable{background:#FFF5D6;border-color:#FFC600;}.stab.internal{background:#FFB9B3;border-color:#B71C1C;}.stab.deprecated{background:#F3DFFF;border-color:#7F0087;}.stab.portability{background:#C4ECFF;border-color:#7BA5DB;}.stab.portability>code{color:#000;}#help>div{background:#e9e9e9;border-color:#bfbfbf;}.since{color:grey;}tr.result span.primitive::after,tr.result span.keyword::after{color:black;}.line-numbers :target{background-color:transparent;}pre.rust .kw{color:#8959A8;}pre.rust .kw-2,pre.rust .prelude-ty{color:#4271AE;}pre.rust .number,pre.rust .string{color:#718C00;}pre.rust .self,pre.rust .bool-val,pre.rust .prelude-val,pre.rust .attribute,pre.rust .attribute .ident{color:#C82829;}pre.rust .macro,pre.rust .macro-nonterminal{color:#3E999F;}pre.rust .lifetime{color:#B76514;}pre.rust .question-mark{color:#ff9011;}.example-wrap>pre.line-number{border-color:#c7c7c7;}a.test-arrow{background-color:rgba(78,139,202,0.2);}a.test-arrow:hover{background-color:#4e8bca;}.toggle-label{color:#999;}:target>code,:target>.in-band{background:#FDFFD3;}pre.compile_fail{border-left:2px solid rgba(255,0,0,.5);}pre.compile_fail:hover,.information:hover+pre.compile_fail{border-left:2px solid #f00;}pre.should_panic{border-left:2px solid rgba(255,0,0,.5);}pre.should_panic:hover,.information:hover+pre.should_panic{border-left:2px solid #f00;}pre.ignore{border-left:2px solid rgba(255,142,0,.6);}pre.ignore:hover,.information:hover+pre.ignore{border-left:2px solid #ff9200;}.tooltip.compile_fail{color:rgba(255,0,0,.5);}.information>.compile_fail:hover{color:#f00;}.tooltip.should_panic{color:rgba(255,0,0,.5);}.information>.should_panic:hover{color:#f00;}.tooltip.ignore{color:rgba(255,142,0,.6);}.information>.ignore:hover{color:#ff9200;}.search-failed a{color:#0089ff;}.tooltip .tooltiptext{background-color:#000;color:#fff;}.tooltip .tooltiptext::after{border-color:transparent black transparent transparent;}#titles>div:not(.selected){background-color:#e6e6e6;border-top-color:#e6e6e6;}#titles>div:hover,#titles>div.selected{border-top-color:#0089ff;}#titles>div>div.count{color:#888;}@media (max-width:700px){.sidebar-menu{background-color:#F1F1F1;border-bottom-color:#e0e0e0;border-right-color:#e0e0e0;}.sidebar-elems{background-color:#F1F1F1;border-right-color:#000;}#sidebar-filler{background-color:#F1F1F1;border-bottom-color:#e0e0e0;}}kbd{color:#000;background-color:#fafbfc;border-color:#d1d5da;border-bottom-color:#c6cbd1;box-shadow-color:#c6cbd1;}#theme-picker,#settings-menu{border-color:#e0e0e0;background-color:#fff;}#theme-picker:hover,#theme-picker:focus,#settings-menu:hover,#settings-menu:focus{border-color:#717171;}#theme-choices{border-color:#ccc;background-color:#fff;}#theme-choices>button:not(:first-child){border-top-color:#e0e0e0;}#theme-choices>button:hover,#theme-choices>button:focus{background-color:#eee;}@media (max-width:700px){#theme-picker{background:#fff;}}#all-types{background-color:#fff;}#all-types:hover{background-color:#f9f9f9;}.search-results td span.alias{color:#000;}.search-results td span.grey{color:#999;}#sidebar-toggle{background-color:#F1F1F1;}#sidebar-toggle:hover{background-color:#E0E0E0;}#source-sidebar{background-color:#F1F1F1;}#source-sidebar>.title{border-bottom-color:#ccc;}div.files>a:hover,div.name:hover{background-color:#E0E0E0;}div.files>.selected{background-color:#fff;}.setting-line>.title{border-bottom-color:#D5D5D5;} \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/main.js b/static/docs-rs/bdk/0.1.0-beta.1/main.js index 6618d8e508..0bdb14b511 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/main.js +++ b/static/docs-rs/bdk/0.1.0-beta.1/main.js @@ -1,4 +1,4 @@ -if(!String.prototype.startsWith){String.prototype.startsWith=function(searchString,position){position=position||0;return this.indexOf(searchString,position)===position}}if(!String.prototype.endsWith){String.prototype.endsWith=function(suffix,length){var l=length||this.length;return this.indexOf(suffix,l-suffix.length)!==-1}}if(!DOMTokenList.prototype.add){DOMTokenList.prototype.add=function(className){if(className&&!hasClass(this,className)){if(this.className&&this.className.length>0){this.className+=" "+className}else{this.className=className}}}}if(!DOMTokenList.prototype.remove){DOMTokenList.prototype.remove=function(className){if(className&&this.className){this.className=(" "+this.className+" ").replace(" "+className+" "," ").trim()}}}function getSearchInput(){return document.getElementsByClassName("search-input")[0]}function getSearchElement(){return document.getElementById("search")}function focusSearchBar(){getSearchInput().focus()}function defocusSearchBar(){getSearchInput().blur()}(function(){"use strict";var itemTypes=["mod","externcrate","import","struct","enum","fn","type","static","trait","impl","tymethod","method","structfield","variant","macro","primitive","associatedtype","constant","associatedconstant","union","foreigntype","keyword","existential","attr","derive","traitalias"];var disableShortcuts=getCurrentValue("rustdoc-disable-shortcuts")==="true";var search_input=getSearchInput();var searchTimeout=null;var currentTab=0;var titleBeforeSearch=document.title;function clearInputTimeout(){if(searchTimeout!==null){clearTimeout(searchTimeout);searchTimeout=null}}function getPageId(){var id=document.location.href.split("#")[1];if(id){return id.split("?")[0].split("&")[0]}return null}function showSidebar(){var elems=document.getElementsByClassName("sidebar-elems")[0];if(elems){addClass(elems,"show-it")}var sidebar=document.getElementsByClassName("sidebar")[0];if(sidebar){addClass(sidebar,"mobile");var filler=document.getElementById("sidebar-filler");if(!filler){var div=document.createElement("div");div.id="sidebar-filler";sidebar.appendChild(div)}}var themePickers=document.getElementsByClassName("theme-picker");if(themePickers&&themePickers.length>0){themePickers[0].style.display="none"}}function hideSidebar(){var elems=document.getElementsByClassName("sidebar-elems")[0];if(elems){removeClass(elems,"show-it")}var sidebar=document.getElementsByClassName("sidebar")[0];removeClass(sidebar,"mobile");var filler=document.getElementById("sidebar-filler");if(filler){filler.remove()}document.getElementsByTagName("body")[0].style.marginTop="";var themePickers=document.getElementsByClassName("theme-picker");if(themePickers&&themePickers.length>0){themePickers[0].style.display=null}}function showSearchResults(search){if(search===null||typeof search==='undefined'){search=getSearchElement()}addClass(main,"hidden");removeClass(search,"hidden")}function hideSearchResults(search){if(search===null||typeof search==='undefined'){search=getSearchElement()}addClass(search,"hidden");removeClass(main,"hidden")}var TY_PRIMITIVE=itemTypes.indexOf("primitive");var TY_KEYWORD=itemTypes.indexOf("keyword");function getQueryStringParams(){var params={};window.location.search.substring(1).split("&").map(function(s){var pair=s.split("=");params[decodeURIComponent(pair[0])]=typeof pair[1]==="undefined"?null:decodeURIComponent(pair[1])});return params}function browserSupportsHistoryApi(){return window.history&&typeof window.history.pushState==="function"}function isHidden(elem){return elem.offsetHeight===0}var main=document.getElementById("main");var savedHash="";function handleHashes(ev){var elem;var search=getSearchElement();if(ev!==null&&search&&!hasClass(search,"hidden")&&ev.newURL){hideSearchResults(search);var hash=ev.newURL.slice(ev.newURL.indexOf("#")+1);if(browserSupportsHistoryApi()){history.replaceState(hash,"","?search=#"+hash)}elem=document.getElementById(hash);if(elem){elem.scrollIntoView()}}if(savedHash!==window.location.hash){savedHash=window.location.hash;if(savedHash.length===0){return}elem=document.getElementById(savedHash.slice(1));if(!elem||!isHidden(elem)){return}var parent=elem.parentNode;if(parent&&hasClass(parent,"impl-items")){onEachLazy(parent.getElementsByClassName("collapsed"),function(e){if(e.parentNode===parent){e.click();return true}});if(isHidden(elem)){if(hasClass(parent.lastElementChild,"collapse-toggle")){parent.lastElementChild.click()}}}}}function highlightSourceLines(match,ev){if(typeof match==="undefined"){hideSidebar();match=window.location.hash.match(/^#?(\d+)(?:-(\d+))?$/)}if(!match){return}var from=parseInt(match[1],10);var to=from;if(typeof match[2]!=="undefined"){to=parseInt(match[2],10)}if(to0){collapseDocs(collapses[0],"show")}}}}function getVirtualKey(ev){if("key"in ev&&typeof ev.key!="undefined"){return ev.key}var c=ev.charCode||ev.keyCode;if(c==27){return"Escape"}return String.fromCharCode(c)}function getHelpElement(){return document.getElementById("help")}function displayHelp(display,ev,help){help=help?help:getHelpElement();if(display===true){if(hasClass(help,"hidden")){ev.preventDefault();removeClass(help,"hidden");addClass(document.body,"blur")}}else if(hasClass(help,"hidden")===false){ev.preventDefault();addClass(help,"hidden");removeClass(document.body,"blur")}}function handleEscape(ev){var help=getHelpElement();var search=getSearchElement();if(hasClass(help,"hidden")===false){displayHelp(false,ev,help)}else if(hasClass(search,"hidden")===false){clearInputTimeout();ev.preventDefault();hideSearchResults(search);document.title=titleBeforeSearch}defocusSearchBar()}function handleShortcut(ev){if(ev.ctrlKey||ev.altKey||ev.metaKey||disableShortcuts===true){return}if(document.activeElement.tagName==="INPUT"){switch(getVirtualKey(ev)){case"Escape":handleEscape(ev);break}}else{switch(getVirtualKey(ev)){case"Escape":handleEscape(ev);break;case"s":case"S":displayHelp(false,ev);ev.preventDefault();focusSearchBar();break;case"+":case"-":ev.preventDefault();toggleAllDocs();break;case"?":if(ev.shiftKey){displayHelp(true,ev)}break}}}function findParentElement(elem,tagName){do{if(elem&&elem.tagName===tagName){return elem}elem=elem.parentNode}while(elem);return null}document.addEventListener("keypress",handleShortcut);document.addEventListener("keydown",handleShortcut);var handleSourceHighlight=(function(){var prev_line_id=0;var set_fragment=function(name){var x=window.scrollX,y=window.scrollY;if(browserSupportsHistoryApi()){history.replaceState(null,null,"#"+name);highlightSourceLines()}else{location.replace("#"+name)}window.scrollTo(x,y)};return function(ev){var cur_line_id=parseInt(ev.target.id,10);ev.preventDefault();if(ev.shiftKey&&prev_line_id){if(prev_line_id>cur_line_id){var tmp=prev_line_id;prev_line_id=cur_line_id;cur_line_id=tmp}set_fragment(prev_line_id+"-"+cur_line_id)}else{prev_line_id=cur_line_id;set_fragment(cur_line_id)}}}());document.addEventListener("click",function(ev){if(hasClass(ev.target,"collapse-toggle")){collapseDocs(ev.target,"toggle")}else if(hasClass(ev.target.parentNode,"collapse-toggle")){collapseDocs(ev.target.parentNode,"toggle")}else if(ev.target.tagName==="SPAN"&&hasClass(ev.target.parentNode,"line-numbers")){handleSourceHighlight(ev)}else if(hasClass(getHelpElement(),"hidden")===false){var help=getHelpElement();var is_inside_help_popup=ev.target!==help&&help.contains(ev.target);if(is_inside_help_popup===false){addClass(help,"hidden");removeClass(document.body,"blur")}}else{var a=findParentElement(ev.target,"A");if(a&&a.hash){expandSection(a.hash.replace(/^#/,""))}}});(function(){var x=document.getElementsByClassName("version-selector");if(x.length>0){x[0].onchange=function(){var i,match,url=document.location.href,stripped="",len=rootPath.match(/\.\.\//g).length+1;for(i=0;i-1){var obj=searchIndex[results[i].id];obj.lev=results[i].lev;if(isType!==true||obj.type){var res=buildHrefAndPath(obj);obj.displayPath=pathSplitter(res[0]);obj.fullPath=obj.displayPath+obj.name;obj.fullPath+="|"+obj.ty;obj.href=res[1];out.push(obj);if(out.length>=MAX_RESULTS){break}}}}return out}function sortResults(results,isType){var ar=[];for(var entry in results){if(hasOwnProperty(results,entry)){ar.push(results[entry])}}results=ar;var i;var nresults=results.length;for(i=0;ib?+1:-1)}a=(aaa.index<0);b=(bbb.index<0);if(a!==b){return a-b}a=aaa.index;b=bbb.index;if(a!==b){return a-b}if((aaa.item.ty===TY_PRIMITIVE&&bbb.item.ty!==TY_KEYWORD)||(aaa.item.ty===TY_KEYWORD&&bbb.item.ty!==TY_PRIMITIVE)){return-1}if((bbb.item.ty===TY_PRIMITIVE&&aaa.item.ty!==TY_PRIMITIVE)||(bbb.item.ty===TY_KEYWORD&&aaa.item.ty!==TY_KEYWORD)){return 1}a=(aaa.item.desc==="");b=(bbb.item.desc==="");if(a!==b){return a-b}a=aaa.item.ty;b=bbb.item.ty;if(a!==b){return a-b}a=aaa.item.path;b=bbb.item.path;if(a!==b){return(a>b?+1:-1)}return 0});var length=results.length;for(i=0;i"));return{name:val.substring(0,val.indexOf("<")),generics:values.split(/\s*,\s*/),}}return{name:val,generics:[],}}function getObjectFromId(id){if(typeof id==="number"){return searchIndex[id]}return{'name':id}}function checkGenerics(obj,val){var lev_distance=MAX_LEV_DISTANCE+1;if(val.generics.length>0){if(obj.length>GENERICS_DATA&&obj[GENERICS_DATA].length>=val.generics.length){var elems=obj[GENERICS_DATA].slice(0);var total=0;var done=0;var vlength=val.generics.length;for(var y=0;yGENERICS_DATA&&obj[GENERICS_DATA].length>=val.generics.length){var elems=obj[GENERICS_DATA].slice(0);var allFound=true;for(var y=0;allFound===true&&yGENERICS_DATA&&obj[GENERICS_DATA].length!==0){var tmp_lev=checkGenerics(obj,val);if(tmp_lev<=MAX_LEV_DISTANCE){return tmp_lev}}else{return 0}}if(literalSearch===true){if(obj.length>GENERICS_DATA&&obj[GENERICS_DATA].length>0){var length=obj[GENERICS_DATA].length;for(x=0;xGENERICS_DATA&&obj[GENERICS_DATA].length>0){var olength=obj[GENERICS_DATA].length;for(x=0;x0){var length=obj.type[INPUTS_DATA].length;for(var i=0;iOUTPUT_DATA){var ret=obj.type[OUTPUT_DATA];if(typeof ret[0]==="string"){ret=[ret]}for(var x=0;xlength){return MAX_LEV_DISTANCE+1}for(var i=0;ilength){break}var lev_total=0;var aborted=false;for(var x=0;xMAX_LEV_DISTANCE){aborted=true;break}lev_total+=lev}if(aborted===false){ret_lev=Math.min(ret_lev,Math.round(lev_total/clength))}}return ret_lev}function typePassesFilter(filter,type){if(filter<=NO_TYPE_FILTER)return true;if(filter===type)return true;var name=itemTypes[type];switch(itemTypes[filter]){case"constant":return name==="associatedconstant";case"fn":return name==="method"||name==="tymethod";case"type":return name==="primitive"||name==="associatedtype";case"trait":return name==="traitalias"}return false}function generateId(ty){if(ty.parent&&ty.parent.name){return itemTypes[ty.ty]+ty.path+ty.parent.name+ty.name}return itemTypes[ty.ty]+ty.path+ty.name}function createAliasFromItem(item){return{crate:item.crate,name:item.name,path:item.path,desc:item.desc,ty:item.ty,parent:item.parent,type:item.type,is_alias:true,}}function handleAliases(ret,query,filterCrates){var aliases=[];var crateAliases=[];var i;if(filterCrates!==undefined){if(ALIASES[filterCrates]&&ALIASES[filterCrates][query.search]){for(i=0;iMAX_RESULTS){ret.others.pop()}};onEach(aliases,pushFunc);onEach(crateAliases,pushFunc)}var nSearchWords=searchWords.length;var i;var ty;var fullId;var returned;var in_args;if((val.charAt(0)==="\""||val.charAt(0)==="'")&&val.charAt(val.length-1)===val.charAt(0)){val=extractGenerics(val.substr(1,val.length-2));for(i=0;i")>-1){var trimmer=function(s){return s.trim()};var parts=val.split("->").map(trimmer);var input=parts[0];var inputs=input.split(",").map(trimmer).sort();for(i=0;i1?paths.length-1:1);var lev;for(j=0;j1){lev=checkPath(contains,paths[paths.length-1],ty);if(lev>MAX_LEV_DISTANCE){continue}else if(lev>0){lev_add=lev/10}}returned=MAX_LEV_DISTANCE+1;in_args=MAX_LEV_DISTANCE+1;var index=-1;lev=MAX_LEV_DISTANCE+1;fullId=generateId(ty);if(searchWords[j].indexOf(split[i])>-1||searchWords[j].indexOf(val)>-1||searchWords[j].replace(/_/g,"").indexOf(val)>-1){if(typePassesFilter(typeFilter,ty.ty)&&results[fullId]===undefined){index=searchWords[j].replace(/_/g,"").indexOf(val)}}if((lev=levenshtein(searchWords[j],val))<=MAX_LEV_DISTANCE){if(typePassesFilter(typeFilter,ty.ty)===false){lev=MAX_LEV_DISTANCE+1}else{lev+=1}}in_args=findArg(ty,valGenerics,false,typeFilter);returned=checkReturned(ty,valGenerics,false,typeFilter);lev+=lev_add;if(lev>0&&val.length>3&&searchWords[j].indexOf(val)>-1){if(val.length<6){lev-=1}else{lev=0}}if(in_args<=MAX_LEV_DISTANCE){if(results_in_args[fullId]===undefined){results_in_args[fullId]={id:j,index:index,lev:in_args,}}results_in_args[fullId].lev=Math.min(results_in_args[fullId].lev,in_args)}if(returned<=MAX_LEV_DISTANCE){if(results_returned[fullId]===undefined){results_returned[fullId]={id:j,index:index,lev:returned,}}results_returned[fullId].lev=Math.min(results_returned[fullId].lev,returned)}if(index!==-1||lev<=MAX_LEV_DISTANCE){if(index!==-1&&paths.length<2){lev=0}if(results[fullId]===undefined){results[fullId]={id:j,index:index,lev:lev,}}results[fullId].lev=Math.min(results[fullId].lev,lev)}}}var ret={"in_args":sortResults(results_in_args,true),"returned":sortResults(results_returned,true),"others":sortResults(results),};handleAliases(ret,query,filterCrates);return ret}function validateResult(name,path,keys,parent){for(var i=0;i-1||path.indexOf(keys[i])>-1||(parent!==undefined&&parent.name!==undefined&&parent.name.toLowerCase().indexOf(keys[i])>-1)||levenshtein(name,keys[i])<=MAX_LEV_DISTANCE)){return false}}return true}function getQuery(raw){var matches,type,query;query=raw;matches=query.match(/^(fn|mod|struct|enum|trait|type|const|macro)\s*:\s*/i);if(matches){type=matches[1].replace(/^const$/,"constant");query=query.substring(matches[0].length)}return{raw:raw,query:query,type:type,id:query+type}}function initSearchNav(){var hoverTimeout;var click_func=function(e){var el=e.target;while(el.tagName!=="TR"){el=el.parentNode}var dst=e.target.getElementsByTagName("a");if(dst.length<1){return}dst=dst[0];if(window.location.pathname===dst.pathname){hideSearchResults();document.location.href=dst.href}};var mouseover_func=function(e){var el=e.target;while(el.tagName!=="TR"){el=el.parentNode}clearTimeout(hoverTimeout);hoverTimeout=setTimeout(function(){onEachLazy(document.getElementsByClassName("search-results"),function(e){onEachLazy(e.getElementsByClassName("result"),function(i_e){removeClass(i_e,"highlighted")})});addClass(el,"highlighted")},20)};onEachLazy(document.getElementsByClassName("search-results"),function(e){onEachLazy(e.getElementsByClassName("result"),function(i_e){i_e.onclick=click_func;i_e.onmouseover=mouseover_func})});search_input.onkeydown=function(e){var actives=[[],[],[]];var current=0;onEachLazy(document.getElementById("results").childNodes,function(e){onEachLazy(e.getElementsByClassName("highlighted"),function(e){actives[current].push(e)});current+=1});if(e.which===38){if(!actives[currentTab].length||!actives[currentTab][0].previousElementSibling){return}addClass(actives[currentTab][0].previousElementSibling,"highlighted");removeClass(actives[currentTab][0],"highlighted")}else if(e.which===40){if(!actives[currentTab].length){var results=document.getElementById("results").childNodes;if(results.length>0){var res=results[currentTab].getElementsByClassName("result");if(res.length>0){addClass(res[0],"highlighted")}}}else if(actives[currentTab][0].nextElementSibling){addClass(actives[currentTab][0].nextElementSibling,"highlighted");removeClass(actives[currentTab][0],"highlighted")}}else if(e.which===13){if(actives[currentTab].length){document.location.href=actives[currentTab][0].getElementsByTagName("a")[0].href}}else if(e.which===9){if(e.shiftKey){printTab(currentTab>0?currentTab-1:2)}else{printTab(currentTab>1?0:currentTab+1)}e.preventDefault()}else if(e.which===16){}else if(actives[currentTab].length>0){removeClass(actives[currentTab][0],"highlighted")}}}function buildHrefAndPath(item){var displayPath;var href;var type=itemTypes[item.ty];var name=item.name;var path=item.path;if(type==="mod"){displayPath=path+"::";href=rootPath+path.replace(/::/g,"/")+"/"+name+"/index.html"}else if(type==="primitive"||type==="keyword"){displayPath="";href=rootPath+path.replace(/::/g,"/")+"/"+type+"."+name+".html"}else if(type==="externcrate"){displayPath="";href=rootPath+name+"/index.html"}else if(item.parent!==undefined){var myparent=item.parent;var anchor="#"+type+"."+name;var parentType=itemTypes[myparent.ty];var pageType=parentType;var pageName=myparent.name;if(parentType==="primitive"){displayPath=myparent.name+"::"}else if(type==="structfield"&&parentType==="variant"){var splitPath=item.path.split("::");var enumName=splitPath.pop();path=splitPath.join("::");displayPath=path+"::"+enumName+"::"+myparent.name+"::";anchor="#variant."+myparent.name+".field."+name;pageType="enum";pageName=enumName}else{displayPath=path+"::"+myparent.name+"::"}href=rootPath+path.replace(/::/g,"/")+"/"+pageType+"."+pageName+".html"+anchor}else{displayPath=item.path+"::";href=rootPath+item.path.replace(/::/g,"/")+"/"+type+"."+name+".html"}return[displayPath,href]}function escape(content){var h1=document.createElement("h1");h1.textContent=content;return h1.innerHTML}function pathSplitter(path){var tmp=""+path.replace(/::/g,"::");if(tmp.endsWith("")){return tmp.slice(0,tmp.length-6)}return tmp}function addTab(array,query,display){var extraStyle="";if(display===false){extraStyle=" style=\"display: none;\""}var output="";var duplicates={};var length=0;if(array.length>0){output="";array.forEach(function(item){var name,type;name=item.name;type=itemTypes[item.ty];if(item.is_alias!==true){if(duplicates[item.fullPath]){return}duplicates[item.fullPath]=true}length+=1;output+=""});output+="
"+""+(item.is_alias===true?(""+item.alias+"  - see "):"")+item.displayPath+""+name+""+""+""+escape(item.desc)+" 
"}else{output="
No results :(
"+"Try on DuckDuckGo?

"+"Or try looking in one of these:
"}return[output,length]}function makeTabHeader(tabNb,text,nbElems){if(currentTab===tabNb){return"
"+text+"
("+nbElems+")
"}return"
"+text+"
("+nbElems+")
"}function showResults(results){if(results.others.length===1&&getCurrentValue("rustdoc-go-to-only-result")==="true"){var elem=document.createElement("a");elem.href=results.others[0].href;elem.style.display="none";document.body.appendChild(elem);elem.click()}var query=getQuery(search_input.value);currentResults=query.id;var ret_others=addTab(results.others,query);var ret_in_args=addTab(results.in_args,query,false);var ret_returned=addTab(results.returned,query,false);var output="

Results for "+escape(query.query)+(query.type?" (type: "+escape(query.type)+")":"")+"

"+"
"+makeTabHeader(0,"In Names",ret_others[1])+makeTabHeader(1,"In Parameters",ret_in_args[1])+makeTabHeader(2,"In Return Types",ret_returned[1])+"
"+ret_others[0]+ret_in_args[0]+ret_returned[0]+"
";var search=getSearchElement();search.innerHTML=output;showSearchResults(search);var tds=search.getElementsByTagName("td");var td_width=0;if(tds.length>0){td_width=tds[0].offsetWidth}var width=search.offsetWidth-40-td_width;onEachLazy(search.getElementsByClassName("desc"),function(e){e.style.width=width+"px"});initSearchNav();var elems=document.getElementById("titles").childNodes;elems[0].onclick=function(){printTab(0)};elems[1].onclick=function(){printTab(1)};elems[2].onclick=function(){printTab(2)};printTab(currentTab)}function execSearch(query,searchWords,filterCrates){function getSmallest(arrays,positions,notDuplicates){var start=null;for(var it=0;itpositions[it]&&(start===null||start>arrays[it][positions[it]].lev)&&!notDuplicates[arrays[it][positions[it]].fullPath]){start=arrays[it][positions[it]].lev}}return start}function mergeArrays(arrays){var ret=[];var positions=[];var notDuplicates={};for(var x=0;xpositions[x]&&arrays[x][positions[x]].lev===smallest&&!notDuplicates[arrays[x][positions[x]].fullPath]){ret.push(arrays[x][positions[x]]);notDuplicates[arrays[x][positions[x]].fullPath]=true;positions[x]+=1}}}return ret}var queries=query.raw.split(",");var results={"in_args":[],"returned":[],"others":[],};for(var i=0;i1){return{"in_args":mergeArrays(results.in_args),"returned":mergeArrays(results.returned),"others":mergeArrays(results.others),}}return{"in_args":results.in_args[0],"returned":results.returned[0],"others":results.others[0],}}function getFilterCrates(){var elem=document.getElementById("crate-search");if(elem&&elem.value!=="All crates"&&hasOwnProperty(rawSearchIndex,elem.value)){return elem.value}return undefined}function search(e,forced){var params=getQueryStringParams();var query=getQuery(search_input.value.trim());if(e){e.preventDefault()}if(query.query.length===0){return}if(forced!==true&&query.id===currentResults){if(query.query.length>0){putBackSearch(search_input)}return}document.title="Results for "+query.query+" - Rust";if(browserSupportsHistoryApi()){if(!history.state&&!params.search){history.pushState(query,"","?search="+encodeURIComponent(query.raw))}else{history.replaceState(query,"","?search="+encodeURIComponent(query.raw))}}var filterCrates=getFilterCrates();showResults(execSearch(query,index,filterCrates))}function buildIndex(rawSearchIndex){searchIndex=[];var searchWords=[];var i;var currentIndex=0;for(var crate in rawSearchIndex){if(!hasOwnProperty(rawSearchIndex,crate)){continue}var crateSize=0;searchWords.push(crate);searchIndex.push({crate:crate,ty:1,name:crate,path:"",desc:rawSearchIndex[crate].doc,type:null,});currentIndex+=1;var items=rawSearchIndex[crate].i;var paths=rawSearchIndex[crate].p;var aliases=rawSearchIndex[crate].a;var len=paths.length;for(i=0;i0){search_input.value=params.search;search(e)}else{search_input.value="";hideSearchResults()}})}search()}index=buildIndex(rawSearchIndex);startSearch();if(rootPath==="../"||rootPath==="./"){var sidebar=document.getElementsByClassName("sidebar-elems")[0];if(sidebar){var div=document.createElement("div");div.className="block crate";div.innerHTML="

Crates

";var ul=document.createElement("ul");div.appendChild(ul);var crates=[];for(var crate in rawSearchIndex){if(!hasOwnProperty(rawSearchIndex,crate)){continue}crates.push(crate)}crates.sort();for(var i=0;i"+""+"
"+code.outerHTML+"
";list.appendChild(display)}}};if(window.pending_implementors){window.register_implementors(window.pending_implementors)}function labelForToggleButton(sectionIsCollapsed){if(sectionIsCollapsed){return"+"}return"\u2212"}function onEveryMatchingChild(elem,className,func){if(elem&&className&&func){var length=elem.childNodes.length;var nodes=elem.childNodes;for(var i=0;i"+labelForToggleButton(sectionIsCollapsed)+"
]";return toggle}function createToggle(toggle,otherMessage,fontSize,extraClass,show){var span=document.createElement("span");span.className="toggle-label";if(show){span.style.display="none"}if(!otherMessage){span.innerHTML=" Expand description"}else{span.innerHTML=otherMessage}if(fontSize){span.style.fontSize=fontSize}var mainToggle=toggle.cloneNode(true);mainToggle.appendChild(span);var wrapper=document.createElement("div");wrapper.className="toggle-wrapper";if(!show){addClass(wrapper,"collapsed");var inner=mainToggle.getElementsByClassName("inner");if(inner&&inner.length>0){inner[0].innerHTML="+"}}if(extraClass){addClass(wrapper,extraClass)}wrapper.appendChild(mainToggle);return wrapper}(function(){var toggle=createSimpleToggle(false);var hideMethodDocs=getCurrentValue("rustdoc-auto-hide-method-docs")==="true";var pageId=getPageId();var func=function(e){var next=e.nextElementSibling;if(!next){return}if(hasClass(next,"docblock")===true||(hasClass(next,"stability")===true&&hasClass(next.nextElementSibling,"docblock")===true)){var newToggle=toggle.cloneNode(true);insertAfter(newToggle,e.childNodes[e.childNodes.length-1]);if(hideMethodDocs===true&&hasClass(e,"method")===true){collapseDocs(newToggle,"hide",pageId)}}};var funcImpl=function(e){var next=e.nextElementSibling;if(next&&hasClass(next,"docblock")){next=next.nextElementSibling}if(!next){return}if(next.getElementsByClassName("method").length>0&&hasClass(e,"impl")){insertAfter(toggle.cloneNode(true),e.childNodes[e.childNodes.length-1])}};onEachLazy(document.getElementsByClassName("method"),func);onEachLazy(document.getElementsByClassName("associatedconstant"),func);onEachLazy(document.getElementsByClassName("impl"),funcImpl);var impl_call=function(){};if(hideMethodDocs===true){impl_call=function(e,newToggle){if(e.id.match(/^impl(?:-\d+)?$/)===null){if(hasClass(e,"impl")===true){collapseDocs(newToggle,"hide",pageId)}}}}var newToggle=document.createElement("a");newToggle.href="javascript:void(0)";newToggle.className="collapse-toggle hidden-default collapsed";newToggle.innerHTML="["+labelForToggleButton(true)+"] Show hidden undocumented items";function toggleClicked(){if(hasClass(this,"collapsed")){removeClass(this,"collapsed");onEachLazy(this.parentNode.getElementsByClassName("hidden"),function(x){if(hasClass(x,"content")===false){removeClass(x,"hidden");addClass(x,"x")}},true);this.innerHTML="["+labelForToggleButton(false)+"] Hide undocumented items"}else{addClass(this,"collapsed");onEachLazy(this.parentNode.getElementsByClassName("x"),function(x){if(hasClass(x,"content")===false){addClass(x,"hidden");removeClass(x,"x")}},true);this.innerHTML="["+labelForToggleButton(true)+"] Show hidden undocumented items"}}onEachLazy(document.getElementsByClassName("impl-items"),function(e){onEachLazy(e.getElementsByClassName("associatedconstant"),func);var hiddenElems=e.getElementsByClassName("hidden");var needToggle=false;var hlength=hiddenElems.length;for(var i=0;iLoading search results...";showSearchResults(search)}var sidebar_menu=document.getElementsByClassName("sidebar-menu")[0];if(sidebar_menu){sidebar_menu.onclick=function(){var sidebar=document.getElementsByClassName("sidebar")[0];if(hasClass(sidebar,"mobile")===true){hideSidebar()}else{showSidebar()}}}window.onresize=function(){hideSidebar()};autoCollapse(getPageId(),getCurrentValue("rustdoc-collapse")==="true");if(window.location.hash&&window.location.hash.length>0){expandSection(window.location.hash.replace(/^#/,""))}if(main){onEachLazy(main.getElementsByClassName("loading-content"),function(e){e.remove()});onEachLazy(main.childNodes,function(e){if(e.tagName==="H2"||e.tagName==="H3"){var nextTagName=e.nextElementSibling.tagName;if(nextTagName=="H2"||nextTagName=="H3"){e.nextElementSibling.style.display="flex"}else{e.nextElementSibling.style.display="block"}}})}window.addSearchOptions=function(crates){var elem=document.getElementById("crate-search");if(!elem){return}var crates_text=[];if(Object.keys(crates).length>1){for(var crate in crates){if(hasOwnProperty(crates,crate)){crates_text.push(crate)}}}crates_text.sort(function(a,b){var lower_a=a.toLowerCase();var lower_b=b.toLowerCase();if(lower_alower_b){return 1}return 0});var savedCrate=getCurrentValue("rustdoc-saved-filter-crate");for(var i=0;i"
"+x[0]+"
"+x[1]+"
").join("");var div_shortcuts=document.createElement("div");addClass(div_shortcuts,"shortcuts");div_shortcuts.innerHTML="

Keyboard Shortcuts

"+shortcuts+"
";var infos=["Prefix searches with a type followed by a colon (e.g., fn:) to \ +if(!String.prototype.startsWith){String.prototype.startsWith=function(searchString,position){position=position||0;return this.indexOf(searchString,position)===position}}if(!String.prototype.endsWith){String.prototype.endsWith=function(suffix,length){var l=length||this.length;return this.indexOf(suffix,l-suffix.length)!==-1}}if(!DOMTokenList.prototype.add){DOMTokenList.prototype.add=function(className){if(className&&!hasClass(this,className)){if(this.className&&this.className.length>0){this.className+=" "+className}else{this.className=className}}}}if(!DOMTokenList.prototype.remove){DOMTokenList.prototype.remove=function(className){if(className&&this.className){this.className=(" "+this.className+" ").replace(" "+className+" "," ").trim()}}}function getSearchInput(){return document.getElementsByClassName("search-input")[0]}function getSearchElement(){return document.getElementById("search")}function focusSearchBar(){getSearchInput().focus()}function defocusSearchBar(){getSearchInput().blur()}(function(){"use strict";var itemTypes=["mod","externcrate","import","struct","enum","fn","type","static","trait","impl","tymethod","method","structfield","variant","macro","primitive","associatedtype","constant","associatedconstant","union","foreigntype","keyword","existential","attr","derive","traitalias"];var disableShortcuts=getCurrentValue("rustdoc-disable-shortcuts")==="true";var search_input=getSearchInput();var searchTimeout=null;var currentTab=0;var mouseMovedAfterSearch=true;var titleBeforeSearch=document.title;function clearInputTimeout(){if(searchTimeout!==null){clearTimeout(searchTimeout);searchTimeout=null}}function getPageId(){if(window.location.hash){var tmp=window.location.hash.replace(/^#/,"");if(tmp.length>0){return tmp}}return null}function showSidebar(){var elems=document.getElementsByClassName("sidebar-elems")[0];if(elems){addClass(elems,"show-it")}var sidebar=document.getElementsByClassName("sidebar")[0];if(sidebar){addClass(sidebar,"mobile");var filler=document.getElementById("sidebar-filler");if(!filler){var div=document.createElement("div");div.id="sidebar-filler";sidebar.appendChild(div)}}var themePickers=document.getElementsByClassName("theme-picker");if(themePickers&&themePickers.length>0){themePickers[0].style.display="none"}}function hideSidebar(){var elems=document.getElementsByClassName("sidebar-elems")[0];if(elems){removeClass(elems,"show-it")}var sidebar=document.getElementsByClassName("sidebar")[0];removeClass(sidebar,"mobile");var filler=document.getElementById("sidebar-filler");if(filler){filler.remove()}document.getElementsByTagName("body")[0].style.marginTop="";var themePickers=document.getElementsByClassName("theme-picker");if(themePickers&&themePickers.length>0){themePickers[0].style.display=null}}function showSearchResults(search){if(search===null||typeof search==='undefined'){search=getSearchElement()}addClass(main,"hidden");removeClass(search,"hidden");mouseMovedAfterSearch=false}function hideSearchResults(search){if(search===null||typeof search==='undefined'){search=getSearchElement()}addClass(search,"hidden");removeClass(main,"hidden")}var TY_PRIMITIVE=itemTypes.indexOf("primitive");var TY_KEYWORD=itemTypes.indexOf("keyword");function getQueryStringParams(){var params={};window.location.search.substring(1).split("&").map(function(s){var pair=s.split("=");params[decodeURIComponent(pair[0])]=typeof pair[1]==="undefined"?null:decodeURIComponent(pair[1])});return params}function browserSupportsHistoryApi(){return window.history&&typeof window.history.pushState==="function"}function isHidden(elem){return elem.offsetHeight===0}var main=document.getElementById("main");var savedHash="";function handleHashes(ev){var elem;var search=getSearchElement();if(ev!==null&&search&&!hasClass(search,"hidden")&&ev.newURL){hideSearchResults(search);var hash=ev.newURL.slice(ev.newURL.indexOf("#")+1);if(browserSupportsHistoryApi()){history.replaceState(hash,"","?search=#"+hash)}elem=document.getElementById(hash);if(elem){elem.scrollIntoView()}}if(savedHash!==window.location.hash){savedHash=window.location.hash;if(savedHash.length===0){return}elem=document.getElementById(savedHash.slice(1));if(!elem||!isHidden(elem)){return}var parent=elem.parentNode;if(parent&&hasClass(parent,"impl-items")){onEachLazy(parent.getElementsByClassName("collapsed"),function(e){if(e.parentNode===parent){e.click();return true}});if(isHidden(elem)){if(hasClass(parent.lastElementChild,"collapse-toggle")){parent.lastElementChild.click()}}}}}function highlightSourceLines(match,ev){if(typeof match==="undefined"){hideSidebar();match=window.location.hash.match(/^#?(\d+)(?:-(\d+))?$/)}if(!match){return}var from=parseInt(match[1],10);var to=from;if(typeof match[2]!=="undefined"){to=parseInt(match[2],10)}if(to0){collapseDocs(collapses[0],"show")}}}}function getVirtualKey(ev){if("key"in ev&&typeof ev.key!="undefined"){return ev.key}var c=ev.charCode||ev.keyCode;if(c==27){return"Escape"}return String.fromCharCode(c)}function getHelpElement(){return document.getElementById("help")}function displayHelp(display,ev,help){help=help?help:getHelpElement();if(display===true){if(hasClass(help,"hidden")){ev.preventDefault();removeClass(help,"hidden");addClass(document.body,"blur")}}else if(hasClass(help,"hidden")===false){ev.preventDefault();addClass(help,"hidden");removeClass(document.body,"blur")}}function handleEscape(ev){var help=getHelpElement();var search=getSearchElement();if(hasClass(help,"hidden")===false){displayHelp(false,ev,help)}else if(hasClass(search,"hidden")===false){clearInputTimeout();ev.preventDefault();hideSearchResults(search);document.title=titleBeforeSearch}defocusSearchBar()}function handleShortcut(ev){if(ev.ctrlKey||ev.altKey||ev.metaKey||disableShortcuts===true){return}if(document.activeElement.tagName==="INPUT"){switch(getVirtualKey(ev)){case"Escape":handleEscape(ev);break}}else{switch(getVirtualKey(ev)){case"Escape":handleEscape(ev);break;case"s":case"S":displayHelp(false,ev);ev.preventDefault();focusSearchBar();break;case"+":case"-":ev.preventDefault();toggleAllDocs();break;case"?":if(ev.shiftKey){displayHelp(true,ev)}break}}}function findParentElement(elem,tagName){do{if(elem&&elem.tagName===tagName){return elem}elem=elem.parentNode}while(elem);return null}document.addEventListener("keypress",handleShortcut);document.addEventListener("keydown",handleShortcut);function resetMouseMoved(ev){mouseMovedAfterSearch=true}document.addEventListener("mousemove",resetMouseMoved);var handleSourceHighlight=(function(){var prev_line_id=0;var set_fragment=function(name){var x=window.scrollX,y=window.scrollY;if(browserSupportsHistoryApi()){history.replaceState(null,null,"#"+name);highlightSourceLines()}else{location.replace("#"+name)}window.scrollTo(x,y)};return function(ev){var cur_line_id=parseInt(ev.target.id,10);ev.preventDefault();if(ev.shiftKey&&prev_line_id){if(prev_line_id>cur_line_id){var tmp=prev_line_id;prev_line_id=cur_line_id;cur_line_id=tmp}set_fragment(prev_line_id+"-"+cur_line_id)}else{prev_line_id=cur_line_id;set_fragment(cur_line_id)}}}());document.addEventListener("click",function(ev){if(hasClass(ev.target,"collapse-toggle")){collapseDocs(ev.target,"toggle")}else if(hasClass(ev.target.parentNode,"collapse-toggle")){collapseDocs(ev.target.parentNode,"toggle")}else if(ev.target.tagName==="SPAN"&&hasClass(ev.target.parentNode,"line-numbers")){handleSourceHighlight(ev)}else if(hasClass(getHelpElement(),"hidden")===false){var help=getHelpElement();var is_inside_help_popup=ev.target!==help&&help.contains(ev.target);if(is_inside_help_popup===false){addClass(help,"hidden");removeClass(document.body,"blur")}}else{var a=findParentElement(ev.target,"A");if(a&&a.hash){expandSection(a.hash.replace(/^#/,""))}}});(function(){var x=document.getElementsByClassName("version-selector");if(x.length>0){x[0].onchange=function(){var i,match,url=document.location.href,stripped="",len=rootPath.match(/\.\.\//g).length+1;for(i=0;i-1){var obj=searchIndex[results[i].id];obj.lev=results[i].lev;if(isType!==true||obj.type){var res=buildHrefAndPath(obj);obj.displayPath=pathSplitter(res[0]);obj.fullPath=obj.displayPath+obj.name;obj.fullPath+="|"+obj.ty;obj.href=res[1];out.push(obj);if(out.length>=MAX_RESULTS){break}}}}return out}function sortResults(results,isType){var ar=[];for(var entry in results){if(hasOwnProperty(results,entry)){ar.push(results[entry])}}results=ar;var i;var nresults=results.length;for(i=0;ib?+1:-1)}a=(aaa.index<0);b=(bbb.index<0);if(a!==b){return a-b}a=aaa.index;b=bbb.index;if(a!==b){return a-b}if((aaa.item.ty===TY_PRIMITIVE&&bbb.item.ty!==TY_KEYWORD)||(aaa.item.ty===TY_KEYWORD&&bbb.item.ty!==TY_PRIMITIVE)){return-1}if((bbb.item.ty===TY_PRIMITIVE&&aaa.item.ty!==TY_PRIMITIVE)||(bbb.item.ty===TY_KEYWORD&&aaa.item.ty!==TY_KEYWORD)){return 1}a=(aaa.item.desc==="");b=(bbb.item.desc==="");if(a!==b){return a-b}a=aaa.item.ty;b=bbb.item.ty;if(a!==b){return a-b}a=aaa.item.path;b=bbb.item.path;if(a!==b){return(a>b?+1:-1)}return 0});var length=results.length;for(i=0;i"));return{name:val.substring(0,val.indexOf("<")),generics:values.split(/\s*,\s*/),}}return{name:val,generics:[],}}function getObjectFromId(id){if(typeof id==="number"){return searchIndex[id]}return{'name':id}}function checkGenerics(obj,val){var lev_distance=MAX_LEV_DISTANCE+1;if(val.generics.length>0){if(obj.length>GENERICS_DATA&&obj[GENERICS_DATA].length>=val.generics.length){var elems=obj[GENERICS_DATA].slice(0);var total=0;var done=0;var vlength=val.generics.length;for(var y=0;yGENERICS_DATA&&obj[GENERICS_DATA].length>=val.generics.length){var elems=obj[GENERICS_DATA].slice(0);var allFound=true;for(var y=0;allFound===true&&yGENERICS_DATA&&obj[GENERICS_DATA].length!==0){var tmp_lev=checkGenerics(obj,val);if(tmp_lev<=MAX_LEV_DISTANCE){return tmp_lev}}else{return 0}}if(literalSearch===true){if(obj.length>GENERICS_DATA&&obj[GENERICS_DATA].length>0){var length=obj[GENERICS_DATA].length;for(x=0;xGENERICS_DATA&&obj[GENERICS_DATA].length>0){var olength=obj[GENERICS_DATA].length;for(x=0;x0){var length=obj.type[INPUTS_DATA].length;for(var i=0;iOUTPUT_DATA){var ret=obj.type[OUTPUT_DATA];if(typeof ret[0]==="string"){ret=[ret]}for(var x=0;xlength){return MAX_LEV_DISTANCE+1}for(var i=0;ilength){break}var lev_total=0;var aborted=false;for(var x=0;xMAX_LEV_DISTANCE){aborted=true;break}lev_total+=lev}if(aborted===false){ret_lev=Math.min(ret_lev,Math.round(lev_total/clength))}}return ret_lev}function typePassesFilter(filter,type){if(filter<=NO_TYPE_FILTER)return true;if(filter===type)return true;var name=itemTypes[type];switch(itemTypes[filter]){case"constant":return name==="associatedconstant";case"fn":return name==="method"||name==="tymethod";case"type":return name==="primitive"||name==="associatedtype";case"trait":return name==="traitalias"}return false}function generateId(ty){if(ty.parent&&ty.parent.name){return itemTypes[ty.ty]+ty.path+ty.parent.name+ty.name}return itemTypes[ty.ty]+ty.path+ty.name}function createAliasFromItem(item){return{crate:item.crate,name:item.name,path:item.path,desc:item.desc,ty:item.ty,parent:item.parent,type:item.type,is_alias:true,}}function handleAliases(ret,query,filterCrates){var aliases=[];var crateAliases=[];var i;if(filterCrates!==undefined){if(ALIASES[filterCrates]&&ALIASES[filterCrates][query.search]){for(i=0;iMAX_RESULTS){ret.others.pop()}};onEach(aliases,pushFunc);onEach(crateAliases,pushFunc)}var nSearchWords=searchWords.length;var i;var ty;var fullId;var returned;var in_args;if((val.charAt(0)==="\""||val.charAt(0)==="'")&&val.charAt(val.length-1)===val.charAt(0)){val=extractGenerics(val.substr(1,val.length-2));for(i=0;i")>-1){var trimmer=function(s){return s.trim()};var parts=val.split("->").map(trimmer);var input=parts[0];var inputs=input.split(",").map(trimmer).sort();for(i=0;i1?paths.length-1:1);var lev;for(j=0;j1){lev=checkPath(contains,paths[paths.length-1],ty);if(lev>MAX_LEV_DISTANCE){continue}else if(lev>0){lev_add=lev/10}}returned=MAX_LEV_DISTANCE+1;in_args=MAX_LEV_DISTANCE+1;var index=-1;lev=MAX_LEV_DISTANCE+1;fullId=generateId(ty);if(searchWords[j].indexOf(split[i])>-1||searchWords[j].indexOf(val)>-1||searchWords[j].replace(/_/g,"").indexOf(val)>-1){if(typePassesFilter(typeFilter,ty.ty)&&results[fullId]===undefined){index=searchWords[j].replace(/_/g,"").indexOf(val)}}if((lev=levenshtein(searchWords[j],val))<=MAX_LEV_DISTANCE){if(typePassesFilter(typeFilter,ty.ty)===false){lev=MAX_LEV_DISTANCE+1}else{lev+=1}}in_args=findArg(ty,valGenerics,false,typeFilter);returned=checkReturned(ty,valGenerics,false,typeFilter);lev+=lev_add;if(lev>0&&val.length>3&&searchWords[j].indexOf(val)>-1){if(val.length<6){lev-=1}else{lev=0}}if(in_args<=MAX_LEV_DISTANCE){if(results_in_args[fullId]===undefined){results_in_args[fullId]={id:j,index:index,lev:in_args,}}results_in_args[fullId].lev=Math.min(results_in_args[fullId].lev,in_args)}if(returned<=MAX_LEV_DISTANCE){if(results_returned[fullId]===undefined){results_returned[fullId]={id:j,index:index,lev:returned,}}results_returned[fullId].lev=Math.min(results_returned[fullId].lev,returned)}if(index!==-1||lev<=MAX_LEV_DISTANCE){if(index!==-1&&paths.length<2){lev=0}if(results[fullId]===undefined){results[fullId]={id:j,index:index,lev:lev,}}results[fullId].lev=Math.min(results[fullId].lev,lev)}}}var ret={"in_args":sortResults(results_in_args,true),"returned":sortResults(results_returned,true),"others":sortResults(results),};handleAliases(ret,query,filterCrates);return ret}function validateResult(name,path,keys,parent){for(var i=0;i-1||path.indexOf(keys[i])>-1||(parent!==undefined&&parent.name!==undefined&&parent.name.toLowerCase().indexOf(keys[i])>-1)||levenshtein(name,keys[i])<=MAX_LEV_DISTANCE)){return false}}return true}function getQuery(raw){var matches,type,query;query=raw;matches=query.match(/^(fn|mod|struct|enum|trait|type|const|macro)\s*:\s*/i);if(matches){type=matches[1].replace(/^const$/,"constant");query=query.substring(matches[0].length)}return{raw:raw,query:query,type:type,id:query+type}}function initSearchNav(){var hoverTimeout;var click_func=function(e){var el=e.target;while(el.tagName!=="TR"){el=el.parentNode}var dst=e.target.getElementsByTagName("a");if(dst.length<1){return}dst=dst[0];if(window.location.pathname===dst.pathname){hideSearchResults();document.location.href=dst.href}};var mouseover_func=function(e){if(mouseMovedAfterSearch){var el=e.target;while(el.tagName!=="TR"){el=el.parentNode}clearTimeout(hoverTimeout);hoverTimeout=setTimeout(function(){onEachLazy(document.getElementsByClassName("search-results"),function(e){onEachLazy(e.getElementsByClassName("result"),function(i_e){removeClass(i_e,"highlighted")})});addClass(el,"highlighted")},20)}};onEachLazy(document.getElementsByClassName("search-results"),function(e){onEachLazy(e.getElementsByClassName("result"),function(i_e){i_e.onclick=click_func;i_e.onmouseover=mouseover_func})});search_input.onkeydown=function(e){var actives=[[],[],[]];var current=0;onEachLazy(document.getElementById("results").childNodes,function(e){onEachLazy(e.getElementsByClassName("highlighted"),function(e){actives[current].push(e)});current+=1});if(e.which===38){if(!actives[currentTab].length||!actives[currentTab][0].previousElementSibling){return}addClass(actives[currentTab][0].previousElementSibling,"highlighted");removeClass(actives[currentTab][0],"highlighted");e.preventDefault()}else if(e.which===40){if(!actives[currentTab].length){var results=document.getElementById("results").childNodes;if(results.length>0){var res=results[currentTab].getElementsByClassName("result");if(res.length>0){addClass(res[0],"highlighted")}}}else if(actives[currentTab][0].nextElementSibling){addClass(actives[currentTab][0].nextElementSibling,"highlighted");removeClass(actives[currentTab][0],"highlighted")}e.preventDefault()}else if(e.which===13){if(actives[currentTab].length){document.location.href=actives[currentTab][0].getElementsByTagName("a")[0].href}}else if(e.which===9){if(e.shiftKey){printTab(currentTab>0?currentTab-1:2)}else{printTab(currentTab>1?0:currentTab+1)}e.preventDefault()}else if(e.which===16){}else if(actives[currentTab].length>0){removeClass(actives[currentTab][0],"highlighted")}}}function buildHrefAndPath(item){var displayPath;var href;var type=itemTypes[item.ty];var name=item.name;var path=item.path;if(type==="mod"){displayPath=path+"::";href=rootPath+path.replace(/::/g,"/")+"/"+name+"/index.html"}else if(type==="primitive"||type==="keyword"){displayPath="";href=rootPath+path.replace(/::/g,"/")+"/"+type+"."+name+".html"}else if(type==="externcrate"){displayPath="";href=rootPath+name+"/index.html"}else if(item.parent!==undefined){var myparent=item.parent;var anchor="#"+type+"."+name;var parentType=itemTypes[myparent.ty];var pageType=parentType;var pageName=myparent.name;if(parentType==="primitive"){displayPath=myparent.name+"::"}else if(type==="structfield"&&parentType==="variant"){var splitPath=item.path.split("::");var enumName=splitPath.pop();path=splitPath.join("::");displayPath=path+"::"+enumName+"::"+myparent.name+"::";anchor="#variant."+myparent.name+".field."+name;pageType="enum";pageName=enumName}else{displayPath=path+"::"+myparent.name+"::"}href=rootPath+path.replace(/::/g,"/")+"/"+pageType+"."+pageName+".html"+anchor}else{displayPath=item.path+"::";href=rootPath+item.path.replace(/::/g,"/")+"/"+type+"."+name+".html"}return[displayPath,href]}function escape(content){var h1=document.createElement("h1");h1.textContent=content;return h1.innerHTML}function pathSplitter(path){var tmp=""+path.replace(/::/g,"::");if(tmp.endsWith("")){return tmp.slice(0,tmp.length-6)}return tmp}function addTab(array,query,display){var extraStyle="";if(display===false){extraStyle=" style=\"display: none;\""}var output="";var duplicates={};var length=0;if(array.length>0){output="";array.forEach(function(item){var name,type;name=item.name;type=itemTypes[item.ty];if(item.is_alias!==true){if(duplicates[item.fullPath]){return}duplicates[item.fullPath]=true}length+=1;output+=""});output+="
"+""+(item.is_alias===true?(""+item.alias+"  - see "):"")+item.displayPath+""+name+""+""+""+escape(item.desc)+" 
"}else{output="
No results :(
"+"Try on DuckDuckGo?

"+"Or try looking in one of these:
"}return[output,length]}function makeTabHeader(tabNb,text,nbElems){if(currentTab===tabNb){return"
"+text+"
("+nbElems+")
"}return"
"+text+"
("+nbElems+")
"}function showResults(results){if(results.others.length===1&&getCurrentValue("rustdoc-go-to-only-result")==="true"){var elem=document.createElement("a");elem.href=results.others[0].href;elem.style.display="none";document.body.appendChild(elem);elem.click()}var query=getQuery(search_input.value);currentResults=query.id;var ret_others=addTab(results.others,query);var ret_in_args=addTab(results.in_args,query,false);var ret_returned=addTab(results.returned,query,false);var output="

Results for "+escape(query.query)+(query.type?" (type: "+escape(query.type)+")":"")+"

"+"
"+makeTabHeader(0,"In Names",ret_others[1])+makeTabHeader(1,"In Parameters",ret_in_args[1])+makeTabHeader(2,"In Return Types",ret_returned[1])+"
"+ret_others[0]+ret_in_args[0]+ret_returned[0]+"
";var search=getSearchElement();search.innerHTML=output;showSearchResults(search);var tds=search.getElementsByTagName("td");var td_width=0;if(tds.length>0){td_width=tds[0].offsetWidth}var width=search.offsetWidth-40-td_width;onEachLazy(search.getElementsByClassName("desc"),function(e){e.style.width=width+"px"});initSearchNav();var elems=document.getElementById("titles").childNodes;elems[0].onclick=function(){printTab(0)};elems[1].onclick=function(){printTab(1)};elems[2].onclick=function(){printTab(2)};printTab(currentTab)}function execSearch(query,searchWords,filterCrates){function getSmallest(arrays,positions,notDuplicates){var start=null;for(var it=0;itpositions[it]&&(start===null||start>arrays[it][positions[it]].lev)&&!notDuplicates[arrays[it][positions[it]].fullPath]){start=arrays[it][positions[it]].lev}}return start}function mergeArrays(arrays){var ret=[];var positions=[];var notDuplicates={};for(var x=0;xpositions[x]&&arrays[x][positions[x]].lev===smallest&&!notDuplicates[arrays[x][positions[x]].fullPath]){ret.push(arrays[x][positions[x]]);notDuplicates[arrays[x][positions[x]].fullPath]=true;positions[x]+=1}}}return ret}var queries=query.raw.split(",");var results={"in_args":[],"returned":[],"others":[],};for(var i=0;i1){return{"in_args":mergeArrays(results.in_args),"returned":mergeArrays(results.returned),"others":mergeArrays(results.others),}}return{"in_args":results.in_args[0],"returned":results.returned[0],"others":results.others[0],}}function getFilterCrates(){var elem=document.getElementById("crate-search");if(elem&&elem.value!=="All crates"&&hasOwnProperty(rawSearchIndex,elem.value)){return elem.value}return undefined}function search(e,forced){var params=getQueryStringParams();var query=getQuery(search_input.value.trim());if(e){e.preventDefault()}if(query.query.length===0){return}if(forced!==true&&query.id===currentResults){if(query.query.length>0){putBackSearch(search_input)}return}document.title="Results for "+query.query+" - Rust";if(browserSupportsHistoryApi()){if(!history.state&&!params.search){history.pushState(query,"","?search="+encodeURIComponent(query.raw))}else{history.replaceState(query,"","?search="+encodeURIComponent(query.raw))}}var filterCrates=getFilterCrates();showResults(execSearch(query,index,filterCrates))}function buildIndex(rawSearchIndex){searchIndex=[];var searchWords=[];var i;var currentIndex=0;for(var crate in rawSearchIndex){if(!hasOwnProperty(rawSearchIndex,crate)){continue}var crateSize=0;searchWords.push(crate);searchIndex.push({crate:crate,ty:1,name:crate,path:"",desc:rawSearchIndex[crate].doc,type:null,});currentIndex+=1;var items=rawSearchIndex[crate].i;var paths=rawSearchIndex[crate].p;var aliases=rawSearchIndex[crate].a;var len=paths.length;for(i=0;i0){search_input.value=params.search;search(e)}else{search_input.value="";hideSearchResults()}})}search()}index=buildIndex(rawSearchIndex);startSearch();if(rootPath==="../"||rootPath==="./"){var sidebar=document.getElementsByClassName("sidebar-elems")[0];if(sidebar){var div=document.createElement("div");div.className="block crate";div.innerHTML="

Crates

";var ul=document.createElement("ul");div.appendChild(ul);var crates=[];for(var crate in rawSearchIndex){if(!hasOwnProperty(rawSearchIndex,crate)){continue}crates.push(crate)}crates.sort();for(var i=0;i"+""+"
"+code.outerHTML+"
";list.appendChild(display)}}};if(window.pending_implementors){window.register_implementors(window.pending_implementors)}function labelForToggleButton(sectionIsCollapsed){if(sectionIsCollapsed){return"+"}return"\u2212"}function onEveryMatchingChild(elem,className,func){if(elem&&className&&func){var length=elem.childNodes.length;var nodes=elem.childNodes;for(var i=0;i"+labelForToggleButton(sectionIsCollapsed)+"
]";return toggle}function createToggle(toggle,otherMessage,fontSize,extraClass,show){var span=document.createElement("span");span.className="toggle-label";if(show){span.style.display="none"}if(!otherMessage){span.innerHTML=" Expand description"}else{span.innerHTML=otherMessage}if(fontSize){span.style.fontSize=fontSize}var mainToggle=toggle.cloneNode(true);mainToggle.appendChild(span);var wrapper=document.createElement("div");wrapper.className="toggle-wrapper";if(!show){addClass(wrapper,"collapsed");var inner=mainToggle.getElementsByClassName("inner");if(inner&&inner.length>0){inner[0].innerHTML="+"}}if(extraClass){addClass(wrapper,extraClass)}wrapper.appendChild(mainToggle);return wrapper}(function(){var toggle=createSimpleToggle(false);var hideMethodDocs=getCurrentValue("rustdoc-auto-hide-method-docs")==="true";var pageId=getPageId();var func=function(e){var next=e.nextElementSibling;if(!next){return}if(hasClass(next,"docblock")===true||(hasClass(next,"stability")===true&&hasClass(next.nextElementSibling,"docblock")===true)){var newToggle=toggle.cloneNode(true);insertAfter(newToggle,e.childNodes[e.childNodes.length-1]);if(hideMethodDocs===true&&hasClass(e,"method")===true){collapseDocs(newToggle,"hide",pageId)}}};var funcImpl=function(e){var next=e.nextElementSibling;if(next&&hasClass(next,"docblock")){next=next.nextElementSibling}if(!next){return}if(hasClass(e,"impl")&&(next.getElementsByClassName("method").length>0||next.getElementsByClassName("associatedconstant").length>0)){insertAfter(toggle.cloneNode(true),e.childNodes[e.childNodes.length-1])}};onEachLazy(document.getElementsByClassName("method"),func);onEachLazy(document.getElementsByClassName("associatedconstant"),func);onEachLazy(document.getElementsByClassName("impl"),funcImpl);var impl_call=function(){};if(hideMethodDocs===true){impl_call=function(e,newToggle){if(e.id.match(/^impl(?:-\d+)?$/)===null){if(hasClass(e,"impl")===true){collapseDocs(newToggle,"hide",pageId)}}}}var newToggle=document.createElement("a");newToggle.href="javascript:void(0)";newToggle.className="collapse-toggle hidden-default collapsed";newToggle.innerHTML="["+labelForToggleButton(true)+"] Show hidden undocumented items";function toggleClicked(){if(hasClass(this,"collapsed")){removeClass(this,"collapsed");onEachLazy(this.parentNode.getElementsByClassName("hidden"),function(x){if(hasClass(x,"content")===false){removeClass(x,"hidden");addClass(x,"x")}},true);this.innerHTML="["+labelForToggleButton(false)+"] Hide undocumented items"}else{addClass(this,"collapsed");onEachLazy(this.parentNode.getElementsByClassName("x"),function(x){if(hasClass(x,"content")===false){addClass(x,"hidden");removeClass(x,"x")}},true);this.innerHTML="["+labelForToggleButton(true)+"] Show hidden undocumented items"}}onEachLazy(document.getElementsByClassName("impl-items"),function(e){onEachLazy(e.getElementsByClassName("associatedconstant"),func);var hiddenElems=e.getElementsByClassName("hidden");var needToggle=false;var hlength=hiddenElems.length;for(var i=0;iLoading search results...";showSearchResults(search)}var sidebar_menu=document.getElementsByClassName("sidebar-menu")[0];if(sidebar_menu){sidebar_menu.onclick=function(){var sidebar=document.getElementsByClassName("sidebar")[0];if(hasClass(sidebar,"mobile")===true){hideSidebar()}else{showSidebar()}}}window.onresize=function(){hideSidebar()};if(main){onEachLazy(main.getElementsByClassName("loading-content"),function(e){e.remove()});onEachLazy(main.childNodes,function(e){if(e.tagName==="H2"||e.tagName==="H3"){var nextTagName=e.nextElementSibling.tagName;if(nextTagName=="H2"||nextTagName=="H3"){e.nextElementSibling.style.display="flex"}else{e.nextElementSibling.style.display="block"}}})}window.addSearchOptions=function(crates){var elem=document.getElementById("crate-search");if(!elem){return}var crates_text=[];if(Object.keys(crates).length>1){for(var crate in crates){if(hasOwnProperty(crates,crate)){crates_text.push(crate)}}}crates_text.sort(function(a,b){var lower_a=a.toLowerCase();var lower_b=b.toLowerCase();if(lower_alower_b){return 1}return 0});var savedCrate=getCurrentValue("rustdoc-saved-filter-crate");for(var i=0;i"
"+x[0]+"
"+x[1]+"
").join("");var div_shortcuts=document.createElement("div");addClass(div_shortcuts,"shortcuts");div_shortcuts.innerHTML="

Keyboard Shortcuts

"+shortcuts+"
";var infos=["Prefix searches with a type followed by a colon (e.g., fn:) to \ restrict the search to a given type.","Accepted types are: fn, mod, struct, \ enum, trait, type, macro, \ and const.","Search functions by type signature (e.g., vec -> usize or \ diff --git a/static/docs-rs/bdk/0.1.0-beta.1/rustdoc.css b/static/docs-rs/bdk/0.1.0-beta.1/rustdoc.css index 1d4cec165b..cbf40b2271 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/rustdoc.css +++ b/static/docs-rs/bdk/0.1.0-beta.1/rustdoc.css @@ -1 +1 @@ - @font-face {font-family:'Fira Sans';font-style:normal;font-weight:400;src:local('Fira Sans'),url("FiraSans-Regular.woff") format('woff');}@font-face {font-family:'Fira Sans';font-style:normal;font-weight:500;src:local('Fira Sans Medium'),url("FiraSans-Medium.woff") format('woff');}@font-face {font-family:'Source Serif Pro';font-style:normal;font-weight:400;src:local('Source Serif Pro'),url("SourceSerifPro-Regular.ttf.woff") format('woff');}@font-face {font-family:'Source Serif Pro';font-style:italic;font-weight:400;src:local('Source Serif Pro Italic'),url("SourceSerifPro-It.ttf.woff") format('woff');}@font-face {font-family:'Source Serif Pro';font-style:normal;font-weight:700;src:local('Source Serif Pro Bold'),url("SourceSerifPro-Bold.ttf.woff") format('woff');}@font-face {font-family:'Source Code Pro';font-style:normal;font-weight:400;src:url("SourceCodePro-Regular.woff") format('woff');}@font-face {font-family:'Source Code Pro';font-style:normal;font-weight:600;src:url("SourceCodePro-Semibold.woff") format('woff');}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}html{content:"";}@media (prefers-color-scheme:light){html{content:"light";}}@media (prefers-color-scheme:dark){html{content:"dark";}}body{font:16px/1.4 "Source Serif Pro",serif;margin:0;position:relative;padding:10px 15px 20px 15px;-webkit-font-feature-settings:"kern","liga";-moz-font-feature-settings:"kern","liga";font-feature-settings:"kern","liga";}h1{font-size:1.5em;}h2{font-size:1.4em;}h3{font-size:1.3em;}h1,h2,h3:not(.impl):not(.method):not(.type):not(.tymethod):not(.important),h4:not(.method):not(.type):not(.tymethod):not(.associatedconstant){font-weight:500;margin:20px 0 15px 0;padding-bottom:6px;}h1.fqn{border-bottom:1px dashed;margin-top:0;}h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod):not(.associatedconstant){border-bottom:1px solid;}h3.impl,h3.method,h4.method,h3.type,h4.type,h4.associatedconstant{flex-basis:100%;font-weight:600;margin-top:16px;margin-bottom:10px;position:relative;}h3.impl,h3.method,h3.type{padding-left:15px;}h1,h2,h3,h4,.sidebar,a.source,.search-input,.content table :not(code)>a,.collapse-toggle,div.item-list .out-of-band,#source-sidebar,#sidebar-toggle{font-family:"Fira Sans",sans-serif;}ol,ul{padding-left:25px;}ul ul,ol ul,ul ol,ol ol{margin-bottom:.6em;}p{margin:0 0 .6em 0;}summary{outline:none;}code,pre,a.test-arrow{font-family:"Source Code Pro",monospace;}.docblock code,.docblock-short code{border-radius:3px;padding:0 0.1em;}.docblock pre code,.docblock-short pre code{padding:0;}pre{padding:14px;}.source .content pre{padding:20px;}img{max-width:100%;}li{position:relative;}.source .content{margin-top:50px;max-width:none;overflow:visible;margin-left:0px;min-width:70em;}nav.sub{font-size:16px;text-transform:uppercase;}.sidebar{width:200px;position:fixed;left:0;top:0;bottom:0;overflow:auto;}*{scrollbar-width:initial;}.sidebar{scrollbar-width:thin;}::-webkit-scrollbar{width:12px;}.sidebar::-webkit-scrollbar{width:8px;}::-webkit-scrollbar-track{-webkit-box-shadow:inset 0;}.sidebar .block>ul>li{margin-right:-10px;}.content,nav{max-width:960px;}.hidden{display:none !important;}.logo-container{height:100px;width:100px;position:relative;margin:20px auto;display:block;margin-top:10px;}.logo-container>img{max-width:100px;max-height:100px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;}.sidebar .location{border:1px solid;font-size:17px;margin:30px 10px 20px 10px;text-align:center;word-wrap:break-word;}.sidebar .version{font-size:15px;text-align:center;border-bottom:1px solid;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;}.location:empty{border:none;}.location a:first-child{font-weight:500;}.block{padding:0;margin-bottom:14px;}.block h2,.block h3{margin-top:0;margin-bottom:8px;text-align:center;}.block ul,.block li{margin:0 10px;padding:0;list-style:none;}.block a{display:block;text-overflow:ellipsis;overflow:hidden;line-height:15px;padding:7px 5px;font-size:14px;font-weight:300;transition:border 500ms ease-out;}.sidebar-title{border-top:1px solid;border-bottom:1px solid;text-align:center;font-size:17px;margin-bottom:5px;}.sidebar-links{margin-bottom:15px;}.sidebar-links>a{padding-left:10px;width:100%;}.sidebar-menu{display:none;}.content{padding:15px 0;}.source .content pre.rust{white-space:pre;overflow:auto;padding-left:0;}.rustdoc:not(.source) .example-wrap{display:inline-flex;margin-bottom:10px;position:relative;}.example-wrap{width:100%;}.example-wrap>pre.line-number{overflow:initial;border:1px solid;border-top-left-radius:5px;border-bottom-left-radius:5px;padding:13px 8px;text-align:right;}.rustdoc:not(.source) .example-wrap>pre.rust{width:100%;overflow-x:auto;}.rustdoc:not(.source) .example-wrap>pre{margin:0;}#search{margin-left:230px;position:relative;}#results{position:absolute;right:0;left:0;overflow:auto;}#results>table{width:100%;table-layout:fixed;}.content pre.line-numbers{float:left;border:none;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}.line-numbers span{cursor:pointer;}.docblock-short p{display:inline;}.docblock-short.nowrap{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.docblock-short p{overflow:hidden;text-overflow:ellipsis;margin:0;}.docblock code,.docblock-short code{white-space:pre-wrap;}.docblock h1,.docblock h2,.docblock h3,.docblock h4,.docblock h5{border-bottom:1px solid;}#main>.docblock h1{font-size:1.3em;}#main>.docblock h2{font-size:1.15em;}#main>.docblock h3,#main>.docblock h4,#main>.docblock h5{font-size:1em;}#main>h2+div,#main>h2+h3,#main>h3+div{display:none;flex-wrap:wrap;}.docblock h1{font-size:1em;}.docblock h2{font-size:0.95em;}.docblock h3,.docblock h4,.docblock h5{font-size:0.9em;}.docblock{margin-left:24px;position:relative;}.content .out-of-band{float:right;font-size:23px;margin:0px;padding:0px;font-weight:normal;}h3.impl>.out-of-band{font-size:21px;}h4.method>.out-of-band{font-size:19px;}h4>code,h3>code,.invisible>code{max-width:calc(100% - 41px);display:block;}.invisible{width:100%;display:inline-block;}.content .in-band{margin:0px;padding:0px;}.in-band>code{display:inline-block;}#main{position:relative;}#main>.since{top:inherit;font-family:"Fira Sans",sans-serif;}.content table:not(.table-display){border-spacing:0 5px;}.content td{vertical-align:top;}.content td:first-child{padding-right:20px;}.content td p:first-child{margin-top:0;}.content td h1,.content td h2{margin-left:0;font-size:1.1em;}.content tr:first-child td{border-top:0;}.docblock table{margin:.5em 0;width:calc(100% - 2px);border:1px dashed;}.docblock table td{padding:.5em;border:1px dashed;}.docblock table th{padding:.5em;text-align:left;border:1px solid;}.fields+table{margin-bottom:1em;}.content .item-list{list-style-type:none;padding:0;}.content .multi-column{-moz-column-count:5;-moz-column-gap:2.5em;-webkit-column-count:5;-webkit-column-gap:2.5em;column-count:5;column-gap:2.5em;}.content .multi-column li{width:100%;display:inline-block;}.content .method{font-size:1em;position:relative;}.content .method .where,.content .fn .where,.content .where.fmt-newline{display:block;font-size:0.8em;}.content .methods>div{margin-left:40px;margin-bottom:15px;}.content .docblock>.impl-items{margin-left:20px;margin-top:-34px;}.content .docblock>.impl-items>h4{border-bottom:0;}.content .docblock>.impl-items .table-display{margin:0;}.content .docblock>.impl-items table td{padding:0;}.toggle-wrapper.marg-left>.collapse-toggle{left:-24px;}.content .docblock>.impl-items .table-display,.impl-items table td{border:none;}.content .stability code{font-size:90%;}.content .stability{position:relative;margin-left:33px;margin-top:-13px;}.sub-variant>div>.stability{margin-top:initial;}.content .stability::before{content:'⬑';font-size:25px;position:absolute;top:-6px;left:-19px;}.content .impl-items .method,.content .impl-items>.type,.impl-items>.associatedconstant{margin-left:20px;}.content .impl-items .docblock,.content .impl-items .stability{margin-bottom:.6em;}.content .impl-items>.stability{margin-left:40px;}.methods>.stability,.content .impl-items>.stability{margin-top:-8px;}.impl-items{flex-basis:100%;}#main>.stability{margin-top:0;}nav:not(.sidebar){border-bottom:1px solid;padding-bottom:10px;margin-bottom:10px;}nav.main{padding:20px 0;text-align:center;}nav.main .current{border-top:1px solid;border-bottom:1px solid;}nav.main .separator{border:1px solid;display:inline-block;height:23px;margin:0 20px;}nav.sum{text-align:right;}nav.sub form{display:inline;}nav.sub,.content{margin-left:230px;}a{text-decoration:none;background:transparent;}.small-section-header:hover>.anchor{display:initial;}.in-band:hover>.anchor,.impl:hover>.anchor{display:inline-block;position:absolute;}.anchor{display:none;position:absolute;left:-7px;}.anchor.field{left:-5px;}.small-section-header>.anchor{left:-28px;padding-right:10px;}.anchor:before{content:'\2002\00a7\2002';}.docblock a:not(.srclink):not(.test-arrow):hover,.docblock-short a:not(.srclink):not(.test-arrow):hover,.stability a{text-decoration:underline;}.invisible>.srclink,h4>code+.srclink{position:absolute;top:0;right:0;font-size:17px;font-weight:normal;}.block a.current.crate{font-weight:500;}.search-container{position:relative;}.search-container>div{display:inline-flex;width:calc(100% - 34px);}#crate-search{margin-top:5px;padding:6px;padding-right:19px;flex:none;border:0;border-right:0;border-radius:4px 0 0 4px;outline:none;cursor:pointer;border-right:1px solid;-moz-appearance:none;-webkit-appearance:none;text-indent:0.01px;text-overflow:"";background-repeat:no-repeat;background-color:transparent;background-size:20px;background-position:calc(100% - 1px) 56%;}.search-container>.top-button{position:absolute;right:0;top:10px;}.search-input{-moz-box-sizing:border-box !important;box-sizing:border-box !important;outline:none;border:none;border-radius:1px;margin-top:5px;padding:10px 16px;font-size:17px;transition:border-color 300ms ease;transition:border-radius 300ms ease-in-out;transition:box-shadow 300ms ease-in-out;width:100%;}#crate-search+.search-input{border-radius:0 1px 1px 0;width:calc(100% - 32px);}.search-input:focus{border-radius:2px;border:0;outline:0;}.search-results .desc{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:block;}.search-results a{display:block;}.content .search-results td:first-child{padding-right:0;width:50%;}.content .search-results td:first-child a{padding-right:10px;}.content .search-results td:first-child a:after{clear:both;content:"";display:block;}.content .search-results td:first-child a span{float:left;}tr.result span.primitive::after{content:' (primitive type)';font-style:italic;}tr.result span.keyword::after{content:' (keyword)';font-style:italic;}body.blur>:not(#help){filter:blur(8px);-webkit-filter:blur(8px);opacity:.7;}#help{width:100%;height:100vh;position:fixed;top:0;left:0;display:flex;justify-content:center;align-items:center;}#help>div{flex:0 0 auto;box-shadow:0 0 6px rgba(0,0,0,.2);width:550px;height:auto;border:1px solid;}#help dt{float:left;clear:left;display:block;}#help dd{margin:5px 35px;}#help .infos{padding-left:0;}#help h1,#help h2{margin-top:0;}#help>div div{width:50%;float:left;padding:20px;padding-left:17px;}.stab{display:table;border-width:1px;border-style:solid;padding:3px;margin-bottom:5px;font-size:90%;}.stab p{display:inline;}.stab summary{display:list-item;}.stab .emoji{font-size:1.5em;}.module-item .stab{border-radius:3px;display:inline-block;font-size:80%;line-height:1.2;margin-bottom:0;margin-right:.3em;padding:2px;vertical-align:text-bottom;}.module-item.unstable{opacity:0.65;}.since{font-weight:normal;font-size:initial;position:absolute;right:0;top:0;}.impl-items .since,.impl .since{flex-grow:0;padding-left:12px;padding-right:2px;position:initial;}.impl-items .srclink,.impl .srclink{flex-grow:0;font-size:17px;font-weight:normal;}.impl-items code,.impl code{flex-grow:1;}.impl-items h4,h4.impl,h3.impl{display:flex;flex-basis:100%;font-size:16px;margin-bottom:12px;justify-content:space-between;}.variants_table{width:100%;}.variants_table tbody tr td:first-child{width:1%;}td.summary-column{width:100%;}.summary{padding-right:0px;}pre.rust .question-mark{font-weight:bold;}a.test-arrow{display:inline-block;position:absolute;padding:5px 10px 5px 10px;border-radius:5px;font-size:130%;top:5px;right:5px;z-index:1;}a.test-arrow:hover{text-decoration:none;}.section-header:hover a:before{position:absolute;left:-25px;padding-right:10px;content:'\2002\00a7\2002';}.section-header:hover a{text-decoration:none;}.section-header a{color:inherit;}.collapse-toggle{font-weight:300;position:absolute;left:-23px;top:0;}h3>.collapse-toggle,h4>.collapse-toggle{font-size:0.8em;top:5px;}.toggle-wrapper>.collapse-toggle{left:-24px;margin-top:0px;}.toggle-wrapper{position:relative;margin-top:0;}.toggle-wrapper.collapsed{height:25px;transition:height .2s;margin-bottom:.6em;}.collapse-toggle>.inner{display:inline-block;width:1.2ch;text-align:center;}.collapse-toggle.hidden-default{position:relative;margin-left:20px;}.since+.srclink{display:table-cell;padding-left:10px;}.item-spacer{width:100%;height:12px;}.out-of-band>span.since{position:initial;font-size:20px;margin-right:5px;}.toggle-wrapper>.collapse-toggle{left:0;}.variant+.toggle-wrapper+.docblock>p{margin-top:5px;}.sub-variant,.sub-variant>h3{margin-top:1px !important;}#main>.sub-variant>h3{font-size:15px;margin-left:25px;margin-bottom:5px;}.sub-variant>div{margin-left:20px;margin-bottom:10px;}.sub-variant>div>span{display:block;position:relative;}.toggle-label{display:inline-block;margin-left:4px;margin-top:3px;}.enum>.toggle-wrapper+.docblock,.struct>.toggle-wrapper+.docblock{margin-left:30px;margin-bottom:20px;margin-top:5px;}.docblock>.section-header:first-child{margin-left:15px;margin-top:0;}.docblock>.section-header:first-child:hover>a:before{left:-10px;}.enum>.collapsed,.struct>.collapsed{margin-bottom:25px;}#main>.variant,#main>.structfield{display:block;}.attributes{display:block;margin-top:0px !important;margin-right:0px;margin-bottom:0px !important;margin-left:30px;}.toggle-attributes.collapsed{margin-bottom:0;}.impl-items>.toggle-attributes{margin-left:20px;}.impl-items .attributes{font-weight:500;}:target>code{opacity:1;}.information{position:absolute;left:-25px;margin-top:7px;z-index:1;}.tooltip{position:relative;display:inline-block;cursor:pointer;}.tooltip .tooltiptext{width:120px;display:none;text-align:center;padding:5px 3px 3px 3px;border-radius:6px;margin-left:5px;top:-5px;left:105%;z-index:10;font-size:16px;}.tooltip:hover .tooltiptext{display:inline;}.tooltip .tooltiptext::after{content:" ";position:absolute;top:50%;left:16px;margin-top:-5px;border-width:5px;border-style:solid;}.tooltip.compile_fail,.tooltip.ignore{font-weight:bold;font-size:20px;}.tooltip .tooltiptext{border:1px solid;font-weight:normal;}pre.rust{position:relative;tab-size:4;-moz-tab-size:4;}.search-failed{text-align:center;margin-top:20px;}.search-failed>ul{text-align:left;max-width:570px;margin-left:auto;margin-right:auto;}#titles{height:35px;}#titles>div{float:left;width:33.3%;text-align:center;font-size:18px;cursor:pointer;border-top:2px solid;}#titles>div:not(:last-child){margin-right:1px;width:calc(33.3% - 1px);}#titles>div>div.count{display:inline-block;font-size:16px;}#all-types{text-align:center;border:1px solid;margin:0 10px;margin-bottom:10px;display:block;border-radius:7px;}#all-types>p{margin:5px 0;}#sidebar-toggle{position:fixed;top:30px;left:300px;z-index:10;padding:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;cursor:pointer;font-weight:bold;transition:left .5s;font-size:1.2em;border:1px solid;border-left:0;}#source-sidebar{position:fixed;top:0;bottom:0;left:0;width:300px;z-index:1;overflow:auto;transition:left .5s;border-right:1px solid;}#source-sidebar>.title{font-size:1.5em;text-align:center;border-bottom:1px solid;margin-bottom:6px;}.theme-picker{position:absolute;left:211px;top:19px;}.theme-picker button{outline:none;}#settings-menu{position:absolute;right:0;top:10px;outline:none;}#theme-picker,#settings-menu{padding:4px;width:27px;height:29px;border:1px solid;border-radius:3px;cursor:pointer;}#theme-choices{display:none;position:absolute;left:0;top:28px;border:1px solid;border-radius:3px;z-index:1;cursor:pointer;}#theme-choices>button{border:none;width:100%;padding:4px;text-align:center;background:rgba(0,0,0,0);}#theme-choices>button:not(:first-child){border-top:1px solid;}@media (max-width:700px){body{padding-top:0px;}.rustdoc>.sidebar{height:45px;min-height:40px;margin:0;margin-left:-15px;padding:0 15px;position:static;z-index:11;}.sidebar>.location{float:right;margin:0px;margin-top:2px;padding:3px 10px 1px 10px;min-height:39px;background:inherit;text-align:left;font-size:24px;}.sidebar .location:empty{padding:0;}.sidebar .logo-container{width:35px;height:35px;margin-top:5px;margin-bottom:5px;float:left;margin-left:50px;}.sidebar .logo-container>img{max-width:35px;max-height:35px;}.sidebar-menu{position:fixed;z-index:10;font-size:2rem;cursor:pointer;width:45px;left:0;text-align:center;display:block;border-bottom:1px solid;border-right:1px solid;height:45px;}.rustdoc.source>.sidebar>.sidebar-menu{display:none;}.sidebar-elems{position:fixed;z-index:1;left:0;top:45px;bottom:0;overflow-y:auto;border-right:1px solid;display:none;}.sidebar>.block.version{border-bottom:none;margin-top:12px;}nav.sub{width:calc(100% - 32px);float:right;}.content{margin-left:0px;}#main{margin-top:45px;padding:0;}.content .in-band{width:100%;}.content h4>.out-of-band{position:inherit;}.toggle-wrapper>.collapse-toggle{left:0px;}.toggle-wrapper{height:1.5em;}#search{margin-left:0;}.content .impl-items .method,.content .impl-items>.type,.impl-items>.associatedconstant{display:flex;}.anchor{display:none !important;}h1.fqn{overflow:initial;}.theme-picker{left:10px;top:54px;z-index:1;}#titles>div>div.count{float:left;width:100%;}#titles{height:50px;}.sidebar.mobile{position:fixed;width:100%;margin-left:0;background-color:rgba(0,0,0,0);height:100%;}.sidebar{width:calc(100% + 30px);}.show-it{display:block;width:246px;}.show-it>.block.items{margin:8px 0;}.show-it>.block.items>ul{margin:0;}.show-it>.block.items>ul>li{text-align:center;margin:2px 0;}.show-it>.block.items>ul>li>a{font-size:21px;}#sidebar-filler{position:fixed;left:45px;width:calc(100% - 45px);top:0;height:45px;z-index:-1;border-bottom:1px solid;}.collapse-toggle{left:-20px;}.impl>.collapse-toggle{left:-10px;}#all-types{margin:10px;}#sidebar-toggle{top:100px;width:30px;font-size:1.5rem;text-align:center;padding:0;}#source-sidebar{z-index:11;}#main>.line-numbers{margin-top:0;}}@media print{nav.sub,.content .out-of-band,.collapse-toggle{display:none;}}@media (max-width:416px){#titles{height:73px;}#titles>div{height:73px;}}h3.important{margin:0;margin-bottom:13px;font-size:19px;}kbd{display:inline-block;padding:3px 5px;font:15px monospace;line-height:10px;vertical-align:middle;border:solid 1px;border-radius:3px;box-shadow:inset 0 -1px 0;cursor:default;}.hidden-by-impl-hider,.hidden-by-usual-hider{display:none !important;}#implementations-list>h3>span.in-band{width:100%;}.table-display{width:100%;border:0;border-collapse:collapse;border-spacing:0;font-size:16px;}.table-display tr td:first-child{padding-right:0;}.table-display tr td:last-child{float:right;}.table-display .out-of-band{position:relative;font-size:19px;display:block;}#implementors-list>.impl-items .table-display .out-of-band{font-size:17px;}.table-display td:hover .anchor{display:block;top:2px;left:-5px;}#main>ul{padding-left:10px;}#main>ul>li{list-style:none;}.non-exhaustive{margin-bottom:1em;}div.children{padding-left:27px;display:none;}div.name{cursor:pointer;position:relative;margin-left:16px;}div.files>a{display:block;padding:0 3px;}div.files>a:hover,div.name:hover{background-color:#a14b4b;}div.name.expand+.children{display:block;}div.name::before{content:"\25B6";padding-left:4px;font-size:0.7em;position:absolute;left:-16px;top:4px;}div.name.expand::before{transform:rotate(90deg);left:-15px;top:2px;}.type-decl>pre>.toggle-wrapper.toggle-attributes.top-attr{margin-left:0 !important;}.type-decl>pre>.docblock.attributes.top-attr{margin-left:1.8em !important;}.type-decl>pre>.toggle-attributes{margin-left:2.2em;}.type-decl>pre>.docblock.attributes{margin-left:4em;} \ No newline at end of file + @font-face {font-family:'Fira Sans';font-style:normal;font-weight:400;src:local('Fira Sans'),url("FiraSans-Regular.woff") format('woff');}@font-face {font-family:'Fira Sans';font-style:normal;font-weight:500;src:local('Fira Sans Medium'),url("FiraSans-Medium.woff") format('woff');}@font-face {font-family:'Source Serif Pro';font-style:normal;font-weight:400;src:local('Source Serif Pro'),url("SourceSerifPro-Regular.ttf.woff") format('woff');}@font-face {font-family:'Source Serif Pro';font-style:italic;font-weight:400;src:local('Source Serif Pro Italic'),url("SourceSerifPro-It.ttf.woff") format('woff');}@font-face {font-family:'Source Serif Pro';font-style:normal;font-weight:700;src:local('Source Serif Pro Bold'),url("SourceSerifPro-Bold.ttf.woff") format('woff');}@font-face {font-family:'Source Code Pro';font-style:normal;font-weight:400;src:url("SourceCodePro-Regular.woff") format('woff');}@font-face {font-family:'Source Code Pro';font-style:normal;font-weight:600;src:url("SourceCodePro-Semibold.woff") format('woff');}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}html{content:"";}@media (prefers-color-scheme:light){html{content:"light";}}@media (prefers-color-scheme:dark){html{content:"dark";}}body{font:16px/1.4 "Source Serif Pro",serif;margin:0;position:relative;padding:10px 15px 20px 15px;-webkit-font-feature-settings:"kern","liga";-moz-font-feature-settings:"kern","liga";font-feature-settings:"kern","liga";}h1{font-size:1.5em;}h2{font-size:1.4em;}h3{font-size:1.3em;}h1,h2,h3:not(.impl):not(.method):not(.type):not(.tymethod):not(.important),h4:not(.method):not(.type):not(.tymethod):not(.associatedconstant){font-weight:500;margin:20px 0 15px 0;padding-bottom:6px;}h1.fqn{border-bottom:1px dashed;margin-top:0;}h1.fqn>.in-band>a:hover{text-decoration:underline;}h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod):not(.associatedconstant){border-bottom:1px solid;}h3.impl,h3.method,h4.method,h3.type,h4.type,h4.associatedconstant{flex-basis:100%;font-weight:600;margin-top:16px;margin-bottom:10px;position:relative;}h3.impl,h3.method,h3.type{padding-left:15px;}h1,h2,h3,h4,.sidebar,a.source,.search-input,.content table :not(code)>a,.collapse-toggle,div.item-list .out-of-band,#source-sidebar,#sidebar-toggle{font-family:"Fira Sans",sans-serif;}ol,ul{padding-left:25px;}ul ul,ol ul,ul ol,ol ol{margin-bottom:.6em;}p{margin:0 0 .6em 0;}summary{outline:none;}code,pre,a.test-arrow{font-family:"Source Code Pro",monospace;}.docblock code,.docblock-short code{border-radius:3px;padding:0 0.1em;}.docblock pre code,.docblock-short pre code{padding:0;}pre{padding:14px;}.source .content pre{padding:20px;}img{max-width:100%;}li{position:relative;}.source .content{margin-top:50px;max-width:none;overflow:visible;margin-left:0px;min-width:70em;}nav.sub{font-size:16px;text-transform:uppercase;}.sidebar{width:200px;position:fixed;left:0;top:0;bottom:0;overflow:auto;}*{scrollbar-width:initial;}.sidebar{scrollbar-width:thin;}::-webkit-scrollbar{width:12px;}.sidebar::-webkit-scrollbar{width:8px;}::-webkit-scrollbar-track{-webkit-box-shadow:inset 0;}.sidebar .block>ul>li{margin-right:-10px;}.content,nav{max-width:960px;}.hidden{display:none !important;}.logo-container{height:100px;width:100px;position:relative;margin:20px auto;display:block;margin-top:10px;}.logo-container>img{max-width:100px;max-height:100px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;}.sidebar .location{border:1px solid;font-size:17px;margin:30px 10px 20px 10px;text-align:center;word-wrap:break-word;}.sidebar .version{font-size:15px;text-align:center;border-bottom:1px solid;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;}.location:empty{border:none;}.location a:first-child{font-weight:500;}.block{padding:0;margin-bottom:14px;}.block h2,.block h3{margin-top:0;margin-bottom:8px;text-align:center;}.block ul,.block li{margin:0 10px;padding:0;list-style:none;}.block a{display:block;text-overflow:ellipsis;overflow:hidden;line-height:15px;padding:7px 5px;font-size:14px;font-weight:300;transition:border 500ms ease-out;}.sidebar-title{border-top:1px solid;border-bottom:1px solid;text-align:center;font-size:17px;margin-bottom:5px;}.sidebar-links{margin-bottom:15px;}.sidebar-links>a{padding-left:10px;width:100%;}.sidebar-menu{display:none;}.content{padding:15px 0;}.source .content pre.rust{white-space:pre;overflow:auto;padding-left:0;}.rustdoc:not(.source) .example-wrap{display:inline-flex;margin-bottom:10px;position:relative;}.example-wrap{width:100%;}.example-wrap>pre.line-number{overflow:initial;border:1px solid;border-top-left-radius:5px;border-bottom-left-radius:5px;padding:13px 8px;text-align:right;}.rustdoc:not(.source) .example-wrap>pre.rust{width:100%;overflow-x:auto;}.rustdoc:not(.source) .example-wrap>pre{margin:0;}#search{margin-left:230px;position:relative;}#results{position:absolute;right:0;left:0;overflow:auto;}#results>table{width:100%;table-layout:fixed;}.content pre.line-numbers{float:left;border:none;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}.line-numbers span{cursor:pointer;}.docblock-short p{display:inline;}.docblock-short.nowrap{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.docblock-short p{overflow:hidden;text-overflow:ellipsis;margin:0;}.docblock code,.docblock-short code{white-space:pre-wrap;}.docblock h1,.docblock h2,.docblock h3,.docblock h4,.docblock h5{border-bottom:1px solid;}#main>.docblock h1{font-size:1.3em;}#main>.docblock h2{font-size:1.15em;}#main>.docblock h3,#main>.docblock h4,#main>.docblock h5{font-size:1em;}#main>h2+div,#main>h2+h3,#main>h3+div{display:none;flex-wrap:wrap;}.docblock h1{font-size:1em;}.docblock h2{font-size:0.95em;}.docblock h3,.docblock h4,.docblock h5{font-size:0.9em;}.docblock{margin-left:24px;position:relative;}.content .out-of-band{float:right;font-size:23px;margin:0px;padding:0px;font-weight:normal;}h3.impl>.out-of-band{font-size:21px;}h4.method>.out-of-band{font-size:19px;}h4>code,h3>code,.invisible>code{max-width:calc(100% - 41px);display:block;}.invisible{width:100%;display:inline-block;}.content .in-band{margin:0px;padding:0px;}.in-band>code{display:inline-block;}#main{position:relative;}#main>.since{top:inherit;font-family:"Fira Sans",sans-serif;}.content table:not(.table-display){border-spacing:0 5px;}.content td{vertical-align:top;}.content td:first-child{padding-right:20px;}.content td p:first-child{margin-top:0;}.content td h1,.content td h2{margin-left:0;font-size:1.1em;}.content tr:first-child td{border-top:0;}.docblock table{margin:.5em 0;width:calc(100% - 2px);border:1px dashed;}.docblock table td{padding:.5em;border:1px dashed;}.docblock table th{padding:.5em;text-align:left;border:1px solid;}.fields+table{margin-bottom:1em;}.content .item-list{list-style-type:none;padding:0;}.content .multi-column{-moz-column-count:5;-moz-column-gap:2.5em;-webkit-column-count:5;-webkit-column-gap:2.5em;column-count:5;column-gap:2.5em;}.content .multi-column li{width:100%;display:inline-block;}.content .method{font-size:1em;position:relative;}.content .method .where,.content .fn .where,.content .where.fmt-newline{display:block;font-size:0.8em;}.content .methods>div{margin-left:40px;margin-bottom:15px;}.content .docblock>.impl-items{margin-left:20px;margin-top:-34px;}.content .docblock>.impl-items>h4{border-bottom:0;}.content .docblock>.impl-items .table-display{margin:0;}.content .docblock>.impl-items table td{padding:0;}.toggle-wrapper.marg-left>.collapse-toggle{left:-24px;}.content .docblock>.impl-items .table-display,.impl-items table td{border:none;}.content .stability code{font-size:90%;}.content .stability{position:relative;margin-left:33px;margin-top:-13px;}.sub-variant>div>.stability{margin-top:initial;}.content .stability::before{content:'⬑';font-size:25px;position:absolute;top:-6px;left:-19px;}.content .impl-items .method,.content .impl-items>.type,.impl-items>.associatedconstant{margin-left:20px;}.content .impl-items .docblock,.content .impl-items .stability{margin-bottom:.6em;}.content .impl-items>.stability{margin-left:40px;}.methods>.stability,.content .impl-items>.stability{margin-top:-8px;}.impl-items{flex-basis:100%;}#main>.stability{margin-top:0;}nav:not(.sidebar){border-bottom:1px solid;padding-bottom:10px;margin-bottom:10px;}nav.main{padding:20px 0;text-align:center;}nav.main .current{border-top:1px solid;border-bottom:1px solid;}nav.main .separator{border:1px solid;display:inline-block;height:23px;margin:0 20px;}nav.sum{text-align:right;}nav.sub form{display:inline;}nav.sub,.content{margin-left:230px;}a{text-decoration:none;background:transparent;}.small-section-header:hover>.anchor{display:initial;}.in-band:hover>.anchor,.impl:hover>.anchor{display:inline-block;position:absolute;}.anchor{display:none;position:absolute;left:-7px;}.anchor.field{left:-5px;}.small-section-header>.anchor{left:-28px;padding-right:10px;}.anchor:before{content:'\2002\00a7\2002';}.docblock a:not(.srclink):not(.test-arrow):hover,.docblock-short a:not(.srclink):not(.test-arrow):hover,.stability a{text-decoration:underline;}.invisible>.srclink,h4>code+.srclink{position:absolute;top:0;right:0;font-size:17px;font-weight:normal;}.block a.current.crate{font-weight:500;}.search-container{position:relative;}.search-container>div{display:inline-flex;width:calc(100% - 34px);}#crate-search{margin-top:5px;padding:6px;padding-right:19px;flex:none;border:0;border-right:0;border-radius:4px 0 0 4px;outline:none;cursor:pointer;border-right:1px solid;-moz-appearance:none;-webkit-appearance:none;text-indent:0.01px;text-overflow:"";background-repeat:no-repeat;background-color:transparent;background-size:20px;background-position:calc(100% - 1px) 56%;}.search-container>.top-button{position:absolute;right:0;top:10px;}.search-input{-moz-box-sizing:border-box !important;box-sizing:border-box !important;outline:none;border:none;border-radius:1px;margin-top:5px;padding:10px 16px;font-size:17px;transition:border-color 300ms ease;transition:border-radius 300ms ease-in-out;transition:box-shadow 300ms ease-in-out;width:100%;}#crate-search+.search-input{border-radius:0 1px 1px 0;width:calc(100% - 32px);}.search-input:focus{border-radius:2px;border:0;outline:0;}.search-results .desc{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:block;}.search-results a{display:block;}.content .search-results td:first-child{padding-right:0;width:50%;}.content .search-results td:first-child a{padding-right:10px;}.content .search-results td:first-child a:after{clear:both;content:"";display:block;}.content .search-results td:first-child a span{float:left;}tr.result span.primitive::after{content:' (primitive type)';font-style:italic;}tr.result span.keyword::after{content:' (keyword)';font-style:italic;}body.blur>:not(#help){filter:blur(8px);-webkit-filter:blur(8px);opacity:.7;}#help{width:100%;height:100vh;position:fixed;top:0;left:0;display:flex;justify-content:center;align-items:center;}#help>div{flex:0 0 auto;box-shadow:0 0 6px rgba(0,0,0,.2);width:550px;height:auto;border:1px solid;}#help dt{float:left;clear:left;display:block;}#help dd{margin:5px 35px;}#help .infos{padding-left:0;}#help h1,#help h2{margin-top:0;}#help>div div{width:50%;float:left;padding:20px;padding-left:17px;}.stab{display:table;border-width:1px;border-style:solid;padding:3px;margin-bottom:5px;font-size:90%;}.stab p{display:inline;}.stab summary{display:list-item;}.stab .emoji{font-size:1.5em;}.module-item .stab{border-radius:3px;display:inline-block;font-size:80%;line-height:1.2;margin-bottom:0;margin-right:.3em;padding:2px;vertical-align:text-bottom;}.module-item.unstable{opacity:0.65;}.since{font-weight:normal;font-size:initial;position:absolute;right:0;top:0;}.impl-items .since,.impl .since{flex-grow:0;padding-left:12px;padding-right:2px;position:initial;}.impl-items .srclink,.impl .srclink{flex-grow:0;font-size:17px;font-weight:normal;}.impl-items code,.impl code{flex-grow:1;}.impl-items h4,h4.impl,h3.impl{display:flex;flex-basis:100%;font-size:16px;margin-bottom:12px;justify-content:space-between;}.variants_table{width:100%;}.variants_table tbody tr td:first-child{width:1%;}td.summary-column{width:100%;}.summary{padding-right:0px;}pre.rust .question-mark{font-weight:bold;}a.test-arrow{display:inline-block;position:absolute;padding:5px 10px 5px 10px;border-radius:5px;font-size:130%;top:5px;right:5px;z-index:1;}a.test-arrow:hover{text-decoration:none;}.section-header:hover a:before{position:absolute;left:-25px;padding-right:10px;content:'\2002\00a7\2002';}.section-header:hover a{text-decoration:none;}.section-header a{color:inherit;}.collapse-toggle{font-weight:300;position:absolute;left:-23px;top:0;}h3>.collapse-toggle,h4>.collapse-toggle{font-size:0.8em;top:5px;}.toggle-wrapper>.collapse-toggle{left:-24px;margin-top:0px;}.toggle-wrapper{position:relative;margin-top:0;}.toggle-wrapper.collapsed{height:25px;transition:height .2s;margin-bottom:.6em;}.collapse-toggle>.inner{display:inline-block;width:1.2ch;text-align:center;}.collapse-toggle.hidden-default{position:relative;margin-left:20px;}.since+.srclink{display:table-cell;padding-left:10px;}.item-spacer{width:100%;height:12px;}.out-of-band>span.since{position:initial;font-size:20px;margin-right:5px;}.toggle-wrapper>.collapse-toggle{left:0;}.variant+.toggle-wrapper+.docblock>p{margin-top:5px;}.sub-variant,.sub-variant>h3{margin-top:1px !important;}#main>.sub-variant>h3{font-size:15px;margin-left:25px;margin-bottom:5px;}.sub-variant>div{margin-left:20px;margin-bottom:10px;}.sub-variant>div>span{display:block;position:relative;}.toggle-label{display:inline-block;margin-left:4px;margin-top:3px;}.enum>.toggle-wrapper+.docblock,.struct>.toggle-wrapper+.docblock{margin-left:30px;margin-bottom:20px;margin-top:5px;}.docblock>.section-header:first-child{margin-left:15px;margin-top:0;}.docblock>.section-header:first-child:hover>a:before{left:-10px;}.enum>.collapsed,.struct>.collapsed{margin-bottom:25px;}#main>.variant,#main>.structfield{display:block;}.attributes{display:block;margin-top:0px !important;margin-right:0px;margin-bottom:0px !important;margin-left:30px;}.toggle-attributes.collapsed{margin-bottom:0;}.impl-items>.toggle-attributes{margin-left:20px;}.impl-items .attributes{font-weight:500;}:target>code{opacity:1;}.information{position:absolute;left:-25px;margin-top:7px;z-index:1;}.tooltip{position:relative;display:inline-block;cursor:pointer;}.tooltip .tooltiptext{width:120px;display:none;text-align:center;padding:5px 3px 3px 3px;border-radius:6px;margin-left:5px;top:-5px;left:105%;z-index:10;font-size:16px;}.tooltip:hover .tooltiptext{display:inline;}.tooltip .tooltiptext::after{content:" ";position:absolute;top:50%;left:16px;margin-top:-5px;border-width:5px;border-style:solid;}.tooltip.compile_fail,.tooltip.should_panic,.tooltip.ignore{font-weight:bold;font-size:20px;}.tooltip .tooltiptext{border:1px solid;font-weight:normal;}pre.rust{position:relative;tab-size:4;-moz-tab-size:4;}.search-failed{text-align:center;margin-top:20px;}.search-failed>ul{text-align:left;max-width:570px;margin-left:auto;margin-right:auto;}#titles{height:35px;}#titles>div{float:left;width:33.3%;text-align:center;font-size:18px;cursor:pointer;border-top:2px solid;}#titles>div:not(:last-child){margin-right:1px;width:calc(33.3% - 1px);}#titles>div>div.count{display:inline-block;font-size:16px;}#all-types{text-align:center;border:1px solid;margin:0 10px;margin-bottom:10px;display:block;border-radius:7px;}#all-types>p{margin:5px 0;}#sidebar-toggle{position:fixed;top:30px;left:300px;z-index:10;padding:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;cursor:pointer;font-weight:bold;transition:left .5s;font-size:1.2em;border:1px solid;border-left:0;}#source-sidebar{position:fixed;top:0;bottom:0;left:0;width:300px;z-index:1;overflow:auto;transition:left .5s;border-right:1px solid;}#source-sidebar>.title{font-size:1.5em;text-align:center;border-bottom:1px solid;margin-bottom:6px;}.theme-picker{position:absolute;left:211px;top:19px;}.theme-picker button{outline:none;}#settings-menu{position:absolute;right:0;top:10px;outline:none;}#theme-picker,#settings-menu{padding:4px;width:27px;height:29px;border:1px solid;border-radius:3px;cursor:pointer;}#theme-choices{display:none;position:absolute;left:0;top:28px;border:1px solid;border-radius:3px;z-index:1;cursor:pointer;}#theme-choices>button{border:none;width:100%;padding:4px;text-align:center;background:rgba(0,0,0,0);}#theme-choices>button:not(:first-child){border-top:1px solid;}@media (max-width:700px){body{padding-top:0px;}.rustdoc>.sidebar{height:45px;min-height:40px;margin:0;margin-left:-15px;padding:0 15px;position:static;z-index:11;}.sidebar>.location{float:right;margin:0px;margin-top:2px;padding:3px 10px 1px 10px;min-height:39px;background:inherit;text-align:left;font-size:24px;}.sidebar .location:empty{padding:0;}.sidebar .logo-container{width:35px;height:35px;margin-top:5px;margin-bottom:5px;float:left;margin-left:50px;}.sidebar .logo-container>img{max-width:35px;max-height:35px;}.sidebar-menu{position:fixed;z-index:10;font-size:2rem;cursor:pointer;width:45px;left:0;text-align:center;display:block;border-bottom:1px solid;border-right:1px solid;height:45px;}.rustdoc.source>.sidebar>.sidebar-menu{display:none;}.sidebar-elems{position:fixed;z-index:1;left:0;top:45px;bottom:0;overflow-y:auto;border-right:1px solid;display:none;}.sidebar>.block.version{border-bottom:none;margin-top:12px;}nav.sub{width:calc(100% - 32px);float:right;}.content{margin-left:0px;}#main{margin-top:45px;padding:0;}.content .in-band{width:100%;}.content h4>.out-of-band{position:inherit;}.toggle-wrapper>.collapse-toggle{left:0px;}.toggle-wrapper{height:1.5em;}#search{margin-left:0;}.content .impl-items .method,.content .impl-items>.type,.impl-items>.associatedconstant{display:flex;}.anchor{display:none !important;}h1.fqn{overflow:initial;}.theme-picker{left:10px;top:54px;z-index:1;}#titles>div>div.count{float:left;width:100%;}#titles{height:50px;}.sidebar.mobile{position:fixed;width:100%;margin-left:0;background-color:rgba(0,0,0,0);height:100%;}.sidebar{width:calc(100% + 30px);}.show-it{display:block;width:246px;}.show-it>.block.items{margin:8px 0;}.show-it>.block.items>ul{margin:0;}.show-it>.block.items>ul>li{text-align:center;margin:2px 0;}.show-it>.block.items>ul>li>a{font-size:21px;}#sidebar-filler{position:fixed;left:45px;width:calc(100% - 45px);top:0;height:45px;z-index:-1;border-bottom:1px solid;}.collapse-toggle{left:-20px;}.impl>.collapse-toggle{left:-10px;}#all-types{margin:10px;}#sidebar-toggle{top:100px;width:30px;font-size:1.5rem;text-align:center;padding:0;}#source-sidebar{z-index:11;}#main>.line-numbers{margin-top:0;}}@media print{nav.sub,.content .out-of-band,.collapse-toggle{display:none;}}@media (max-width:416px){#titles{height:73px;}#titles>div{height:73px;}}h3.important{margin:0;margin-bottom:13px;font-size:19px;}kbd{display:inline-block;padding:3px 5px;font:15px monospace;line-height:10px;vertical-align:middle;border:solid 1px;border-radius:3px;box-shadow:inset 0 -1px 0;cursor:default;}.hidden-by-impl-hider,.hidden-by-usual-hider{display:none !important;}#implementations-list>h3>span.in-band{width:100%;}.table-display{width:100%;border:0;border-collapse:collapse;border-spacing:0;font-size:16px;}.table-display tr td:first-child{padding-right:0;}.table-display tr td:last-child{float:right;}.table-display .out-of-band{position:relative;font-size:19px;display:block;}#implementors-list>.impl-items .table-display .out-of-band{font-size:17px;}.table-display td:hover .anchor{display:block;top:2px;left:-5px;}#main>ul{padding-left:10px;}#main>ul>li{list-style:none;}.non-exhaustive{margin-bottom:1em;}div.children{padding-left:27px;display:none;}div.name{cursor:pointer;position:relative;margin-left:16px;}div.files>a{display:block;padding:0 3px;}div.files>a:hover,div.name:hover{background-color:#a14b4b;}div.name.expand+.children{display:block;}div.name::before{content:"\25B6";padding-left:4px;font-size:0.7em;position:absolute;left:-16px;top:4px;}div.name.expand::before{transform:rotate(90deg);left:-15px;top:2px;}.type-decl>pre>.toggle-wrapper.toggle-attributes.top-attr{margin-left:0 !important;}.type-decl>pre>.docblock.attributes.top-attr{margin-left:1.8em !important;}.type-decl>pre>.toggle-attributes{margin-left:2.2em;}.type-decl>pre>.docblock.attributes{margin-left:4em;} \ No newline at end of file diff --git a/static/docs-rs/bdk/0.1.0-beta.1/search-index.js b/static/docs-rs/bdk/0.1.0-beta.1/search-index.js index 178789e6a9..ee6d03afb2 100644 --- a/static/docs-rs/bdk/0.1.0-beta.1/search-index.js +++ b/static/docs-rs/bdk/0.1.0-beta.1/search-index.js @@ -1,4 +1,4 @@ var searchIndex = JSON.parse('{\ -"bdk":{"doc":"","i":[[3,"FeeRate","bdk","Fee rate",null,null],[3,"UTXO","","A wallet unspent output",null,null],[12,"outpoint","","",0,null],[12,"txout","","",0,null],[12,"is_internal","","",0,null],[3,"TransactionDetails","","A wallet transaction",null,null],[12,"transaction","","",1,null],[12,"txid","","",1,null],[12,"timestamp","","",1,null],[12,"received","","",1,null],[12,"sent","","",1,null],[12,"fees","","",1,null],[12,"height","","",1,null],[4,"Error","","Errors that can be thrown by the `Wallet`",null,null],[13,"KeyMismatch","","",2,null],[13,"MissingInputUTXO","","",2,null],[13,"InvalidU32Bytes","","",2,null],[13,"Generic","","",2,null],[13,"ScriptDoesntHaveAddressForm","","",2,null],[13,"SendAllMultipleOutputs","","",2,null],[13,"NoAddressees","","",2,null],[13,"OutputBelowDustLimit","","",2,null],[13,"InsufficientFunds","","",2,null],[13,"InvalidAddressNetwork","","",2,null],[13,"UnknownUTXO","","",2,null],[13,"DifferentTransactions","","",2,null],[13,"TransactionNotFound","","",2,null],[13,"TransactionConfirmed","","",2,null],[13,"IrreplaceableTransaction","","",2,null],[13,"FeeRateTooLow","","",2,null],[12,"required","bdk::Error","",3,null],[13,"ChecksumMismatch","bdk","",2,null],[13,"DifferentDescriptorStructure","","",2,null],[13,"SpendingPolicyRequired","","",2,null],[13,"InvalidPolicyPathError","","",2,null],[13,"Signer","","",2,null],[13,"Uncapable","","",2,null],[13,"OfflineClient","","",2,null],[13,"InvalidProgressValue","","",2,null],[13,"ProgressUpdateError","","",2,null],[13,"MissingCachedAddresses","","",2,null],[13,"InvalidOutpoint","","",2,null],[13,"Descriptor","","",2,null],[13,"AddressValidator","","",2,null],[13,"Encode","","",2,null],[13,"Miniscript","","",2,null],[13,"BIP32","","",2,null],[13,"Secp256k1","","",2,null],[13,"JSON","","",2,null],[13,"Hex","","",2,null],[13,"PSBT","","",2,null],[13,"Electrum","","",2,null],[13,"Esplora","","",2,null],[13,"CompactFilters","","",2,null],[13,"Sled","","",2,null],[4,"ScriptType","","Types of script",null,null],[13,"External","","",4,null],[13,"Internal","","",4,null],[0,"blockchain","","Blockchain backends",null,null],[3,"OfflineBlockchain","bdk::blockchain","Type that only implements [`Blockchain`] and is always…",null,null],[3,"NoopProgress","","Type that implements [`Progress`] and drops every update…",null,null],[3,"LogProgress","","Type that implements [`Progress`] and logs at level `INFO`…",null,null],[4,"Capability","","Capabilities that can be supported by a [`Blockchain`]…",null,null],[13,"FullHistory","","Can recover the full history of a wallet and not only the…",5,null],[13,"GetAnyTx","","Can fetch any historical transaction given its txid",5,null],[13,"AccurateFees","","Can compute accurate fees for the transactions found…",5,null],[5,"progress","","Shortcut to create a [`channel`] (pair of [`Sender`] and…",null,[[]]],[5,"noop_progress","","Create a new instance of [`NoopProgress`]",null,[[],["noopprogress",3]]],[5,"log_progress","","Create a nwe instance of [`LogProgress`]",null,[[],["logprogress",3]]],[0,"electrum","","Electrum",null,null],[3,"ElectrumBlockchain","bdk::blockchain::electrum","Wrapper over an Electrum Client that implements the…",null,null],[0,"esplora","bdk::blockchain","Esplora",null,null],[3,"EsploraBlockchain","bdk::blockchain::esplora","Structure that implements the logic to sync with Esplora",null,null],[4,"EsploraError","","Errors that can happen during a sync with…",null,null],[13,"Reqwest","","Error with the HTTP call",6,null],[13,"Parsing","","Invalid number returned",6,null],[13,"BitcoinEncoding","","Invalid Bitcoin data returned",6,null],[13,"TransactionNotFound","","Transaction not found",6,null],[11,"new","","Create a new instance of the client from a base URL",7,[[]]],[0,"compact_filters","bdk::blockchain","Compact Filters",null,null],[3,"Mempool","bdk::blockchain::compact_filters","Container for unconfirmed, but valid Bitcoin transactions",null,null],[3,"Peer","","A Bitcoin peer",null,null],[3,"CompactFiltersBlockchain","","Structure implementing the required blockchain traits",null,null],[4,"CompactFiltersError","","An error that can occur during sync with a…",null,null],[13,"InvalidResponse","","A peer sent an invalid or unexpected response",8,null],[13,"InvalidHeaders","","The headers returned are invalid",8,null],[13,"InvalidFilterHeader","","The compact filter headers returned are invalid",8,null],[13,"InvalidFilter","","The compact filter returned is invalid",8,null],[13,"MissingBlock","","The peer is missing a block in the valid chain",8,null],[13,"DataCorruption","","The data stored in the block filters storage are corrupted",8,null],[13,"NotConnected","","A peer is not connected",8,null],[13,"Timeout","","A peer took too long to reply to one of our messages",8,null],[13,"NoPeers","","No peers have been specified",8,null],[13,"DB","","Internal database error",8,null],[13,"IO","","Internal I/O error",8,null],[13,"BIP158","","Invalid BIP158 filter",8,null],[13,"Time","","Internal system time error",8,null],[13,"Global","","Wrapper for [`crate::error::Error`]",8,null],[11,"add_tx","","Add a transaction to the mempool",9,[[["transaction",3]]]],[11,"get_tx","","Look-up a transaction in the mempool given an…",9,[[["inventory",4]],[["transaction",3],["option",4]]]],[11,"has_tx","","Return whether or not the mempool contains a transaction…",9,[[["txid",3]]]],[11,"iter_txs","","Return the list of transactions contained in the mempool",9,[[],[["vec",3],["transaction",3]]]],[11,"connect","","Connect to a peer over a plaintext TCP connection",10,[[["tosocketaddrs",8],["arc",3],["network",4],["mempool",3]],[["compactfilterserror",4],["result",4]]]],[11,"connect_proxy","","Connect to a peer through a SOCKS5 proxy, optionally by…",10,[[["tosocketaddrs",8],["option",4],["arc",3],["network",4],["mempool",3],["totargetaddr",8]],[["compactfilterserror",4],["result",4]]]],[11,"get_version","","Return the [`VersionMessage`] sent by the peer",10,[[],["versionmessage",3]]],[11,"get_network","","Return the Bitcoin [`Network`] in use",10,[[],["network",4]]],[11,"get_mempool","","Return the mempool used by this peer",10,[[],[["mempool",3],["arc",3]]]],[11,"is_connected","","Return whether or not the peer is still connected",10,[[]]],[11,"send","","Send a raw Bitcoin message to the peer",10,[[["networkmessage",4]],[["result",4],["compactfilterserror",4]]]],[11,"recv","","Waits for a specific incoming Bitcoin message, optionally…",10,[[["duration",3],["option",4]],[["compactfilterserror",4],["result",4],["option",4]]]],[11,"new","","Construct a new instance given a list of peers, a path to…",11,[[["peer",3],["asref",8],["path",3],["option",4],["vec",3]],[["compactfilterserror",4],["result",4]]]],[6,"ProgressData","bdk::blockchain","Data sent with a progress update over a [`channel`]",null,null],[8,"BlockchainMarker","","Marker trait for a blockchain backend",null,null],[8,"Blockchain","","Trait that defines the actions that must be supported by a…",null,null],[10,"get_capabilities","","Return the set of [`Capability`] supported by this backend",12,[[],[["hashset",3],["capability",4]]]],[10,"setup","","Setup the backend and populate the internal database for…",12,[[["progress",8],["option",4]],[["result",4],["error",4]]]],[11,"sync","","Populate the internal database with transactions and UTXOs",12,[[["progress",8],["option",4]],[["result",4],["error",4]]]],[10,"get_tx","","Fetch a transaction from the blockchain given its txid",12,[[["txid",3]],[["error",4],["result",4],["option",4]]]],[10,"broadcast","","Broadcast a transaction",12,[[["transaction",3]],[["result",4],["error",4]]]],[10,"get_height","","Return the current height",12,[[],[["error",4],["result",4]]]],[10,"estimate_fee","","Estimate the fee rate required to confirm a transaction in…",12,[[],[["feerate",3],["result",4],["error",4]]]],[8,"Progress","","Trait for types that can receive and process progress…",null,null],[10,"update","","Send a new progress update",13,[[["string",3],["option",4]],[["result",4],["error",4]]]],[0,"database","bdk","Database types",null,null],[0,"memory","bdk::database","In-memory ephemeral database",null,null],[3,"MemoryDatabase","bdk::database::memory","In-memory ephemeral database",null,null],[11,"new","","Create a new empty database",14,[[]]],[8,"BatchOperations","bdk::database","Trait for operations that can be batched",null,null],[10,"set_script_pubkey","","Store a script_pubkey along with its script type and child…",15,[[["scripttype",4],["script",3]],[["result",4],["error",4]]]],[10,"set_utxo","","Store a [`UTXO`]",15,[[["utxo",3]],[["result",4],["error",4]]]],[10,"set_raw_tx","","Store a raw transaction",15,[[["transaction",3]],[["result",4],["error",4]]]],[10,"set_tx","","Store the metadata of a transaction",15,[[["transactiondetails",3]],[["result",4],["error",4]]]],[10,"set_last_index","","Store the last derivation index for a given script type",15,[[["scripttype",4]],[["result",4],["error",4]]]],[10,"del_script_pubkey_from_path","","Delete a script_pubkey given the script type and its child…",15,[[["scripttype",4]],[["option",4],["error",4],["result",4]]]],[10,"del_path_from_script_pubkey","","Delete the data related to a specific script_pubkey,…",15,[[["script",3]],[["error",4],["result",4],["option",4]]]],[10,"del_utxo","","Delete a [`UTXO`] given its [`OutPoint`]",15,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[10,"del_raw_tx","","Delete a raw transaction given its [`Txid`]",15,[[["txid",3]],[["error",4],["result",4],["option",4]]]],[10,"del_tx","","Delete the metadata of a transaction and optionally the…",15,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[10,"del_last_index","","Delete the last derivation index for a script type",15,[[["scripttype",4]],[["result",4],["option",4],["error",4]]]],[8,"Database","","Trait for reading data from a database",null,null],[10,"check_descriptor_checksum","","Read and checks the descriptor checksum for a given script…",16,[[["scripttype",4],["asref",8]],[["result",4],["error",4]]]],[10,"iter_script_pubkeys","","Return the list of script_pubkeys",16,[[["scripttype",4],["option",4]],[["error",4],["vec",3],["result",4]]]],[10,"iter_utxos","","Return the list of [`UTXO`]s",16,[[],[["vec",3],["result",4],["error",4]]]],[10,"iter_raw_txs","","Return the list of raw transactions",16,[[],[["result",4],["vec",3],["error",4]]]],[10,"iter_txs","","Return the list of transactions metadata",16,[[],[["result",4],["vec",3],["error",4]]]],[10,"get_script_pubkey_from_path","","Fetch a script_pubkey given the script type and child number",16,[[["scripttype",4]],[["option",4],["error",4],["result",4]]]],[10,"get_path_from_script_pubkey","","Fetch the script type and child number of a given…",16,[[["script",3]],[["error",4],["result",4],["option",4]]]],[10,"get_utxo","","Fetch a [`UTXO`] given its [`OutPoint`]",16,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[10,"get_raw_tx","","Fetch a raw transaction given its [`Txid`]",16,[[["txid",3]],[["error",4],["result",4],["option",4]]]],[10,"get_tx","","Fetch the transaction metadata and optionally also the raw…",16,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[10,"get_last_index","","Return the last defivation index for a script type",16,[[["scripttype",4]],[["result",4],["option",4],["error",4]]]],[10,"increment_last_index","","Increment the last derivation index for a script type and…",16,[[["scripttype",4]],[["error",4],["result",4]]]],[8,"BatchDatabase","","Trait for a database that supports batch operations",null,null],[16,"Batch","","Container for the operations",17,null],[10,"begin_batch","","Create a new batch container",17,[[]]],[10,"commit_batch","","Consume and apply a batch of operations",17,[[],[["result",4],["error",4]]]],[0,"descriptor","bdk","Descriptors",null,null],[4,"Descriptor","bdk::descriptor","Script descriptor",null,null],[13,"Bare","","A raw scriptpubkey (including pay-to-pubkey) under Legacy…",18,null],[13,"Pk","","Pay-to-Pubkey",18,null],[13,"Pkh","","Pay-to-PubKey-Hash",18,null],[13,"Wpkh","","Pay-to-Witness-PubKey-Hash",18,null],[13,"ShWpkh","","Pay-to-Witness-PubKey-Hash inside P2SH",18,null],[13,"Sh","","Pay-to-ScriptHash with Legacy context",18,null],[13,"Wsh","","Pay-to-Witness-ScriptHash with Segwitv0 context",18,null],[13,"ShWsh","","P2SH-P2WSH with Segwitv0 context",18,null],[4,"Legacy","","Legacy ScriptContext",null,null],[3,"Miniscript","","Top-level script AST type",null,null],[12,"node","","A node in the Abstract Syntax Tree(",19,null],[12,"ty","","The correctness and malleability type information for the…",19,null],[12,"ext","","Additional information helpful for extra analysis.",19,null],[8,"MiniscriptKey","","Public key trait which can be converted to Hash type",null,null],[11,"is_uncompressed","","Check if the publicKey is uncompressed. The default…",20,[[]]],[16,"Hash","","The associated Hash type with the publicKey",20,null],[10,"to_pubkeyhash","","Converts an object to PublicHash",20,[[]]],[8,"ScriptContext","","",null,null],[10,"check_frag_non_malleable","","Depending on ScriptContext, fragments can be malleable.…",21,[[["terminal",4]],[["scriptcontexterror",4],["result",4]]]],[10,"check_frag_validity","","Depending on script Context, some of the Terminals might…",21,[[["terminal",4]],[["scriptcontexterror",4],["result",4]]]],[4,"Segwitv0","","Segwitv0 ScriptContext",null,null],[4,"Terminal","","All AST elements",null,null],[13,"True","","`1`",22,null],[13,"False","","`0`",22,null],[13,"PkK","","``",22,null],[13,"PkH","","`DUP HASH160 EQUALVERIFY`",22,null],[13,"After","","`n CHECKLOCKTIMEVERIFY`",22,null],[13,"Older","","`n CHECKSEQUENCEVERIFY`",22,null],[13,"Sha256","","`SIZE 32 EQUALVERIFY SHA256 EQUAL`",22,null],[13,"Hash256","","`SIZE 32 EQUALVERIFY HASH256 EQUAL`",22,null],[13,"Ripemd160","","`SIZE 32 EQUALVERIFY RIPEMD160 EQUAL`",22,null],[13,"Hash160","","`SIZE 32 EQUALVERIFY HASH160 EQUAL`",22,null],[13,"Alt","","`TOALTSTACK [E] FROMALTSTACK`",22,null],[13,"Swap","","`SWAP [E1]`",22,null],[13,"Check","","`[Kt]/[Ke] CHECKSIG`",22,null],[13,"DupIf","","`DUP IF [V] ENDIF`",22,null],[13,"Verify","","[T] VERIFY",22,null],[13,"NonZero","","SIZE 0NOTEQUAL IF [Fn] ENDIF",22,null],[13,"ZeroNotEqual","","[X] 0NOTEQUAL",22,null],[13,"AndV","","[V] [T]/[V]/[F]/[Kt]",22,null],[13,"AndB","","[E] [W] BOOLAND",22,null],[13,"AndOr","","[various] NOTIF [various] ELSE [various] ENDIF",22,null],[13,"OrB","","[E] [W] BOOLOR",22,null],[13,"OrD","","[E] IFDUP NOTIF [T]/[E] ENDIF",22,null],[13,"OrC","","[E] NOTIF [V] ENDIF",22,null],[13,"OrI","","IF [various] ELSE [various] ENDIF",22,null],[13,"Thresh","","[E] ([W] ADD)* k EQUAL",22,null],[13,"Multi","","k ()* n CHECKMULTISIG",22,null],[8,"ToPublicKey","","Trait describing public key types which can be converted…",null,null],[10,"to_public_key","","Converts an object to a public key",23,[[],["publickey",3]]],[11,"serialized_len","","Computes the size of a public key when serialized in a…",23,[[]]],[10,"hash_to_hash160","","Converts a hashed version of the public key to a `hash160`…",23,[[],["hash",3]]],[0,"checksum","","Descriptor checksum",null,null],[5,"get_checksum","bdk::descriptor::checksum","Compute the checksum of a descriptor",null,[[],[["error",4],["string",3],["result",4]]]],[0,"error","bdk::descriptor","Descriptor errors",null,null],[4,"Error","bdk::descriptor::error","Errors related to the parsing and usage of descriptors",null,null],[13,"InternalError","","",24,null],[13,"InvalidPrefix","","",24,null],[13,"HardenedDerivationOnXpub","","",24,null],[13,"MalformedInput","","",24,null],[13,"KeyParsingError","","",24,null],[13,"Policy","","",24,null],[13,"InputIndexDoesntExist","","",24,null],[13,"MissingPublicKey","","",24,null],[13,"MissingDetails","","",24,null],[13,"InvalidDescriptorCharacter","","",24,null],[13,"CantDeriveWithMiniscript","","",24,null],[13,"BIP32","","",24,null],[13,"Base58","","",24,null],[13,"PK","","",24,null],[13,"Miniscript","","",24,null],[13,"Hex","","",24,null],[0,"policy","bdk::descriptor","Descriptor policy",null,null],[3,"PKOrF","bdk::descriptor::policy","Raw public key or extended key fingerprint",null,null],[3,"Policy","","Descriptor spending policy",null,null],[12,"id","","Identifier for this policy node",25,null],[12,"item","","Type of this policy node",25,null],[12,"satisfaction","","How a much given PSBT already satisfies this polcy node…",25,null],[12,"contribution","","How the wallet\'s descriptor can satisfy this policy node",25,null],[3,"Condition","","An extra condition that must be satisfied but that is out…",null,null],[12,"csv","","",26,null],[12,"timelock","","",26,null],[4,"SatisfiableItem","","An item that need to be satisfied",null,null],[13,"Signature","","",27,null],[13,"SignatureKey","","",27,null],[13,"SHA256Preimage","","",27,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","",28,null],[13,"HASH256Preimage","bdk::descriptor::policy","",27,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","",29,null],[13,"RIPEMD160Preimage","bdk::descriptor::policy","",27,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","",30,null],[13,"HASH160Preimage","bdk::descriptor::policy","",27,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","",31,null],[13,"AbsoluteTimelock","bdk::descriptor::policy","",27,null],[12,"value","bdk::descriptor::policy::SatisfiableItem","",32,null],[13,"RelativeTimelock","bdk::descriptor::policy","",27,null],[12,"value","bdk::descriptor::policy::SatisfiableItem","",33,null],[13,"Thresh","bdk::descriptor::policy","",27,null],[12,"items","bdk::descriptor::policy::SatisfiableItem","",34,null],[12,"threshold","","",34,null],[13,"Multisig","bdk::descriptor::policy","",27,null],[12,"keys","bdk::descriptor::policy::SatisfiableItem","",35,null],[12,"threshold","","",35,null],[4,"Satisfaction","bdk::descriptor::policy","Represent if and how much a policy item is satisfied by…",null,null],[13,"Partial","","Only a partial satisfaction of some kind of threshold policy",36,null],[12,"n","bdk::descriptor::policy::Satisfaction","Total number of items",37,null],[12,"m","","Threshold",37,null],[12,"items","","The items that can be satisfied by the descriptor",37,null],[12,"conditions","","Extra conditions that also need to be satisfied",37,null],[13,"PartialComplete","bdk::descriptor::policy","Can reach the threshold of some kind of threshold policy",36,null],[12,"n","bdk::descriptor::policy::Satisfaction","Total number of items",38,null],[12,"m","","Threshold",38,null],[12,"items","","The items that can be satisfied by the descriptor",38,null],[12,"conditions","","Extra conditions that also need to be satisfied",38,null],[13,"Complete","bdk::descriptor::policy","Can satisfy the policy item",36,null],[12,"condition","bdk::descriptor::policy::Satisfaction","Extra conditions that also need to be satisfied",39,null],[13,"None","bdk::descriptor::policy","Cannot satisfy or contribute to the policy item",36,null],[4,"PolicyError","","Errors that can happen while extracting and manipulating…",null,null],[13,"NotEnoughItemsSelected","","",40,null],[13,"TooManyItemsSelected","","",40,null],[13,"IndexOutOfRange","","",40,null],[13,"AddOnLeaf","","",40,null],[13,"AddOnPartialComplete","","",40,null],[13,"MixedTimelockUnits","","",40,null],[13,"IncompatibleConditions","","",40,null],[6,"ConditionMap","","",null,null],[6,"FoldedConditionMap","","",null,null],[11,"is_leaf","","",27,[[]]],[11,"id","","",27,[[],["string",3]]],[11,"is_leaf","","",36,[[]]],[11,"is_null","","",26,[[]]],[11,"requires_path","","Return whether or not a specific path in the policy tree…",25,[[]]],[11,"get_condition","","Return the conditions that are set by the spending policy…",25,[[["btreemap",3]],[["policyerror",4],["result",4],["condition",3]]]],[6,"ExtendedDescriptor","bdk::descriptor","Alias for a [`Descriptor`] that can contain extended keys…",null,null],[6,"HDKeyPaths","","Alias for the type of maps that represent derivation paths…",null,null],[8,"ExtractPolicy","","Trait implemented on [`Descriptor`]s to add a method to…",null,null],[10,"extract_policy","","",41,[[["signerscontainer",3],["arc",3]],[["error",4],["option",4],["result",4]]]],[11,"as_byte","bdk","",4,[[]]],[11,"is_internal","","",4,[[]]],[11,"from_btc_per_kvb","","Create a new instance of [`FeeRate`] given a float fee…",42,[[]]],[11,"from_sat_per_vb","","Create a new instance of [`FeeRate`] given a float fee…",42,[[]]],[11,"default_min_relay_fee","","Create a new [`FeeRate`] with the default min relay fee…",42,[[]]],[11,"as_sat_vb","","Return the value as satoshi/vbyte",42,[[]]],[0,"wallet","","Wallet",null,null],[3,"Wallet","bdk::wallet","A Bitcoin wallet",null,null],[0,"address_validator","","Address validation callbacks",null,null],[4,"AddressValidatorError","bdk::wallet::address_validator","Errors that can be returned to fail the validation of an…",null,null],[13,"UserRejected","","",43,null],[13,"ConnectionError","","",43,null],[13,"TimeoutError","","",43,null],[13,"InvalidScript","","",43,null],[13,"Message","","",43,null],[8,"AddressValidator","","Trait to build address validators",null,null],[10,"validate","","Validate or inspect an address",44,[[["scripttype",4],["script",3],["hdkeypaths",6]],[["result",4],["addressvalidatorerror",4]]]],[0,"coin_selection","bdk::wallet","Coin selection",null,null],[3,"CoinSelectionResult","bdk::wallet::coin_selection","Result of a successful coin selection",null,null],[12,"txin","","List of inputs to use, with the respective previous…",45,null],[12,"selected_amount","","Sum of the selected inputs\' value",45,null],[12,"fee_amount","","Total fee amount in satoshi",45,null],[3,"DumbCoinSelection","","Simple and dumb coin selection",null,null],[6,"DefaultCoinSelectionAlgorithm","","Default coin selection algorithm used by `TxBuilder` if…",null,null],[8,"CoinSelectionAlgorithm","","Trait for generalized coin selection algorithms",null,null],[10,"coin_select","","Perform the coin selection",46,[[["vec",3],["feerate",3],["utxo",3]],[["error",4],["result",4],["coinselectionresult",3]]]],[0,"export","bdk::wallet","Wallet export",null,null],[3,"WalletExport","bdk::wallet::export","Structure that contains the export of a wallet",null,null],[12,"blockheight","","Earliest block to rescan when looking for the wallet\'s…",47,null],[12,"label","","Arbitrary label for the wallet",47,null],[11,"export_wallet","","Export a wallet",47,[[["wallet",3]],["result",4]]],[11,"descriptor","","Return the external descriptor",47,[[],["string",3]]],[11,"change_descriptor","","Return the internal descriptor, if present",47,[[],[["string",3],["option",4]]]],[0,"signer","bdk::wallet","Generalized signers",null,null],[3,"SignerOrdering","bdk::wallet::signer","Defines the order in which signers are called",null,null],[12,"0","","",48,null],[3,"SignersContainer","","Container for multiple signers",null,null],[4,"SignerId","","Identifier of a signer in the `SignersContainers`. Used as…",null,null],[13,"PkHash","","",49,null],[13,"Fingerprint","","",49,null],[4,"SignerError","","Signing error",null,null],[13,"MissingKey","","The private key is missing for the required public key",50,null],[13,"UserCanceled","","The user canceled the operation",50,null],[13,"MissingSighash","","The sighash is missing in the PSBT input",50,null],[13,"InputIndexOutOfRange","","Input index is out of range",50,null],[13,"MissingNonWitnessUtxo","","The `non_witness_utxo` field of the transaction is…",50,null],[13,"InvalidNonWitnessUtxo","","The `non_witness_utxo` specified is invalid",50,null],[13,"MissingWitnessUtxo","","The `witness_utxo` field of the transaction is required to…",50,null],[13,"MissingWitnessScript","","The `witness_script` field of the transaction is requied…",50,null],[13,"MissingHDKeypath","","The fingerprint and derivation path are missing from the…",50,null],[8,"Signer","","Trait for signers",null,null],[10,"sign","","Sign a PSBT",51,[[["partiallysignedtransaction",3],["option",4]],[["result",4],["signererror",4]]]],[10,"sign_whole_tx","","Return whether or not the signer signs the whole…",51,[[]]],[11,"descriptor_secret_key","","Return the secret key for the signer",51,[[],[["option",4],["descriptorsecretkey",4]]]],[11,"as_key_map","","",52,[[],["keymap",6]]],[11,"new","","Default constructor",52,[[]]],[11,"add_external","","Adds an external signer to the container for the specified…",52,[[["signerid",4],["signerordering",3],["arc",3],["box",3]],[["arc",3],["option",4]]]],[11,"remove","","Removes a signer from the container and returns it",52,[[["signerid",4],["signerordering",3]],[["arc",3],["option",4]]]],[11,"ids","","Returns the list of identifiers of all the signers in the…",52,[[],[["vec",3],["signerid",4]]]],[11,"signers","","Returns the list of signers in the container, sorted by…",52,[[],[["arc",3],["vec",3]]]],[11,"find","","Finds the signer with lowest ordering for a given id in…",52,[[["signerid",4]],[["arc",3],["option",4]]]],[0,"time","bdk::wallet","Cross-platform time",null,null],[5,"get_timestamp","bdk::wallet::time","Return the current timestamp in seconds",null,[[]]],[0,"tx_builder","bdk::wallet","Transaction builder",null,null],[3,"TxBuilder","bdk::wallet::tx_builder","A transaction builder",null,null],[4,"TxOrdering","","Ordering of the transaction\'s inputs and outputs",null,null],[13,"Shuffle","","Randomized (default)",53,null],[13,"Untouched","","Unchanged",53,null],[13,"BIP69Lexicographic","","BIP69 / Lexicographic",53,null],[4,"ChangeSpendPolicy","","Policy regarding the use of change outputs when creating a…",null,null],[13,"ChangeAllowed","","Use both change and non-change outputs (default)",54,null],[13,"OnlyChange","","Only use change outputs (see…",54,null],[13,"ChangeForbidden","","Only use non-change outputs (see…",54,null],[11,"new","","Create an empty builder",55,[[]]],[11,"with_recipients","","Create a builder starting from a list of recipients",55,[[["vec",3]]]],[11,"set_recipients","","Replace the recipients already added with a new list",55,[[["vec",3]]]],[11,"add_recipient","","Add a recipient to the internal list",55,[[["script",3]]]],[11,"send_all","","Send all the selected utxos to a single output",55,[[]]],[11,"fee_rate","","Set a custom fee rate",55,[[["feerate",3]]]],[11,"policy_path","","Set the policy path to use while creating the transaction",55,[[["btreemap",3],["vec",3],["string",3]]]],[11,"utxos","","Replace the internal list of utxos that must be spent with…",55,[[["outpoint",3],["vec",3]]]],[11,"add_utxo","","Add a utxo to the internal list of utxos that must be spent",55,[[["outpoint",3]]]],[11,"unspendable","","Replace the internal list of unspendable utxos with a new…",55,[[["outpoint",3],["vec",3]]]],[11,"add_unspendable","","Add a utxo to the internal list of unspendable utxos",55,[[["outpoint",3]]]],[11,"sighash","","Sign with a specific sig hash",55,[[["sighashtype",4]]]],[11,"ordering","","Choose the ordering for inputs and outputs of the…",55,[[["txordering",4]]]],[11,"nlocktime","","Use a specific nLockTime while creating the transaction",55,[[]]],[11,"enable_rbf","","Enable signaling RBF",55,[[]]],[11,"enable_rbf_with_sequence","","Enable signaling RBF with a specific nSequence value",55,[[]]],[11,"version","","Build a transaction with a specific version",55,[[]]],[11,"do_not_spend_change","","Do not spend change outputs",55,[[]]],[11,"only_spend_change","","Only spend change outputs",55,[[]]],[11,"change_policy","","Set a specific [`ChangeSpendPolicy`]. See…",55,[[["changespendpolicy",4]]]],[11,"force_non_witness_utxo","","Fill-in the `psbt::Input::non_witness_utxo` field even if…",55,[[]]],[11,"coin_selection","","Choose the coin selection algorithm",55,[[["coinselectionalgorithm",8]],[["txbuilder",3],["coinselectionalgorithm",8]]]],[11,"sort_tx","","",53,[[["transaction",3]]]],[6,"OfflineWallet","bdk::wallet","Type alias for a [`Wallet`] that uses [`OfflineBlockchain`]",null,null],[8,"IsDust","","Trait to check if a value is below the dust limit",null,null],[10,"is_dust","","Check whether or not a value is below dust limit",56,[[]]],[11,"new_offline","","Create a new \\\"offline\\\" wallet",57,[[["option",4],["network",4]],[["result",4],["error",4]]]],[11,"get_new_address","","Return a newly generated address using the external…",57,[[],[["address",3],["result",4],["error",4]]]],[11,"is_mine","","Return whether or not a `script` is part of this wallet…",57,[[["script",3]],[["error",4],["result",4]]]],[11,"list_unspent","","Return the list of unspent outputs of this wallet",57,[[],[["vec",3],["result",4],["error",4]]]],[11,"list_transactions","","Return the list of transactions made and received by the…",57,[[],[["result",4],["vec",3],["error",4]]]],[11,"get_balance","","Return the balance, meaning the sum of this wallet\'s…",57,[[],[["error",4],["result",4]]]],[11,"add_signer","","Add an external signer",57,[[["scripttype",4],["signerid",4],["signerordering",3],["descriptorpublickey",4],["arc",3],["box",3]]]],[11,"add_address_validator","","Add an address validator",57,[[["arc",3],["box",3]]]],[11,"create_tx","","Create a new transaction following the options specified…",57,[[["txbuilder",3],["coinselectionalgorithm",8]],[["result",4],["error",4]]]],[11,"bump_fee","","Bump the fee of a transaction following the options…",57,[[["txid",3],["txbuilder",3],["coinselectionalgorithm",8]],[["result",4],["error",4]]]],[11,"sign","","Sign a transaction with all the wallet\'s signers, in the…",57,[[["psbt",3],["option",4]],[["error",4],["result",4]]]],[11,"policies","","Return the spending policies for the wallet\'s descriptor",57,[[["scripttype",4]],[["result",4],["option",4],["error",4]]]],[11,"public_descriptor","","Return the \\\"public\\\" version of the wallet\'s descriptor,…",57,[[["scripttype",4]],[["error",4],["option",4],["result",4]]]],[11,"finalize_psbt","","Try to finalize a PSBT",57,[[["psbt",3],["option",4]],[["error",4],["result",4]]]],[11,"new","","Create a new \\\"online\\\" wallet",57,[[["option",4],["network",4]],[["result",4],["error",4]]]],[11,"sync","","Sync the internal database with the blockchain",57,[[["progress",8],["option",4]],[["result",4],["error",4]]]],[11,"client","","Return a reference to the internal blockchain client",57,[[],["option",4]]],[11,"broadcast","","Broadcast a transaction to the network",57,[[["transaction",3]],[["result",4],["txid",3],["error",4]]]],[11,"from","bdk","",42,[[]]],[11,"into","","",42,[[]]],[11,"to_owned","","",42,[[]]],[11,"clone_into","","",42,[[]]],[11,"try_from","","",42,[[],["result",4]]],[11,"try_into","","",42,[[],["result",4]]],[11,"borrow","","",42,[[]]],[11,"borrow_mut","","",42,[[]]],[11,"type_id","","",42,[[],["typeid",3]]],[11,"vzip","","",42,[[]]],[11,"from","","",0,[[]]],[11,"into","","",0,[[]]],[11,"to_owned","","",0,[[]]],[11,"clone_into","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"equivalent","","",0,[[]]],[11,"vzip","","",0,[[]]],[11,"from","","",1,[[]]],[11,"into","","",1,[[]]],[11,"to_owned","","",1,[[]]],[11,"clone_into","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"equivalent","","",1,[[]]],[11,"vzip","","",1,[[]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"to_string","","",2,[[],["string",3]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"vzip","","",2,[[]]],[11,"from","","",4,[[]]],[11,"into","","",4,[[]]],[11,"to_owned","","",4,[[]]],[11,"clone_into","","",4,[[]]],[11,"try_from","","",4,[[],["result",4]]],[11,"try_into","","",4,[[],["result",4]]],[11,"borrow","","",4,[[]]],[11,"borrow_mut","","",4,[[]]],[11,"type_id","","",4,[[],["typeid",3]]],[11,"write_base32","","",4,[[],["result",4]]],[11,"base32_len","","",4,[[]]],[11,"check_base32","","",4,[[],[["result",4],["vec",3]]]],[11,"equivalent","","",4,[[]]],[11,"vzip","","",4,[[]]],[11,"from","bdk::blockchain","",58,[[]]],[11,"into","","",58,[[]]],[11,"try_from","","",58,[[],["result",4]]],[11,"try_into","","",58,[[],["result",4]]],[11,"borrow","","",58,[[]]],[11,"borrow_mut","","",58,[[]]],[11,"type_id","","",58,[[],["typeid",3]]],[11,"vzip","","",58,[[]]],[11,"from","","",59,[[]]],[11,"into","","",59,[[]]],[11,"to_owned","","",59,[[]]],[11,"clone_into","","",59,[[]]],[11,"try_from","","",59,[[],["result",4]]],[11,"try_into","","",59,[[],["result",4]]],[11,"borrow","","",59,[[]]],[11,"borrow_mut","","",59,[[]]],[11,"type_id","","",59,[[],["typeid",3]]],[11,"vzip","","",59,[[]]],[11,"from","","",60,[[]]],[11,"into","","",60,[[]]],[11,"to_owned","","",60,[[]]],[11,"clone_into","","",60,[[]]],[11,"try_from","","",60,[[],["result",4]]],[11,"try_into","","",60,[[],["result",4]]],[11,"borrow","","",60,[[]]],[11,"borrow_mut","","",60,[[]]],[11,"type_id","","",60,[[],["typeid",3]]],[11,"vzip","","",60,[[]]],[11,"from","","",5,[[]]],[11,"into","","",5,[[]]],[11,"to_owned","","",5,[[]]],[11,"clone_into","","",5,[[]]],[11,"try_from","","",5,[[],["result",4]]],[11,"try_into","","",5,[[],["result",4]]],[11,"borrow","","",5,[[]]],[11,"borrow_mut","","",5,[[]]],[11,"type_id","","",5,[[],["typeid",3]]],[11,"equivalent","","",5,[[]]],[11,"vzip","","",5,[[]]],[11,"from","bdk::blockchain::electrum","",61,[[]]],[11,"into","","",61,[[]]],[11,"try_from","","",61,[[],["result",4]]],[11,"try_into","","",61,[[],["result",4]]],[11,"borrow","","",61,[[]]],[11,"borrow_mut","","",61,[[]]],[11,"type_id","","",61,[[],["typeid",3]]],[11,"vzip","","",61,[[]]],[11,"from","bdk::blockchain::esplora","",7,[[]]],[11,"into","","",7,[[]]],[11,"try_from","","",7,[[],["result",4]]],[11,"try_into","","",7,[[],["result",4]]],[11,"borrow","","",7,[[]]],[11,"borrow_mut","","",7,[[]]],[11,"type_id","","",7,[[],["typeid",3]]],[11,"vzip","","",7,[[]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"to_string","","",6,[[],["string",3]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"vzip","","",6,[[]]],[11,"from","bdk::blockchain::compact_filters","",9,[[]]],[11,"into","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"vzip","","",9,[[]]],[11,"from","","",10,[[]]],[11,"into","","",10,[[]]],[11,"try_from","","",10,[[],["result",4]]],[11,"try_into","","",10,[[],["result",4]]],[11,"borrow","","",10,[[]]],[11,"borrow_mut","","",10,[[]]],[11,"type_id","","",10,[[],["typeid",3]]],[11,"vzip","","",10,[[]]],[11,"from","","",11,[[]]],[11,"into","","",11,[[]]],[11,"try_from","","",11,[[],["result",4]]],[11,"try_into","","",11,[[],["result",4]]],[11,"borrow","","",11,[[]]],[11,"borrow_mut","","",11,[[]]],[11,"type_id","","",11,[[],["typeid",3]]],[11,"vzip","","",11,[[]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"to_string","","",8,[[],["string",3]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"vzip","","",8,[[]]],[11,"from","bdk::database::memory","",14,[[]]],[11,"into","","",14,[[]]],[11,"try_from","","",14,[[],["result",4]]],[11,"try_into","","",14,[[],["result",4]]],[11,"borrow","","",14,[[]]],[11,"borrow_mut","","",14,[[]]],[11,"type_id","","",14,[[],["typeid",3]]],[11,"vzip","","",14,[[]]],[11,"from","bdk::descriptor","",18,[[]]],[11,"into","","",18,[[]]],[11,"to_owned","","",18,[[]]],[11,"clone_into","","",18,[[]]],[11,"to_string","","",18,[[],["string",3]]],[11,"try_from","","",18,[[],["result",4]]],[11,"try_into","","",18,[[],["result",4]]],[11,"borrow","","",18,[[]]],[11,"borrow_mut","","",18,[[]]],[11,"type_id","","",18,[[],["typeid",3]]],[11,"equivalent","","",18,[[]]],[11,"vzip","","",18,[[]]],[11,"from","","",62,[[]]],[11,"into","","",62,[[]]],[11,"to_owned","","",62,[[]]],[11,"clone_into","","",62,[[]]],[11,"try_from","","",62,[[],["result",4]]],[11,"try_into","","",62,[[],["result",4]]],[11,"borrow","","",62,[[]]],[11,"borrow_mut","","",62,[[]]],[11,"type_id","","",62,[[],["typeid",3]]],[11,"equivalent","","",62,[[]]],[11,"vzip","","",62,[[]]],[11,"from","","",19,[[]]],[11,"into","","",19,[[]]],[11,"to_owned","","",19,[[]]],[11,"clone_into","","",19,[[]]],[11,"to_string","","",19,[[],["string",3]]],[11,"try_from","","",19,[[],["result",4]]],[11,"try_into","","",19,[[],["result",4]]],[11,"borrow","","",19,[[]]],[11,"borrow_mut","","",19,[[]]],[11,"type_id","","",19,[[],["typeid",3]]],[11,"equivalent","","",19,[[]]],[11,"vzip","","",19,[[]]],[11,"from","","",63,[[]]],[11,"into","","",63,[[]]],[11,"to_owned","","",63,[[]]],[11,"clone_into","","",63,[[]]],[11,"try_from","","",63,[[],["result",4]]],[11,"try_into","","",63,[[],["result",4]]],[11,"borrow","","",63,[[]]],[11,"borrow_mut","","",63,[[]]],[11,"type_id","","",63,[[],["typeid",3]]],[11,"equivalent","","",63,[[]]],[11,"vzip","","",63,[[]]],[11,"from","","",22,[[]]],[11,"into","","",22,[[]]],[11,"to_owned","","",22,[[]]],[11,"clone_into","","",22,[[]]],[11,"to_string","","",22,[[],["string",3]]],[11,"try_from","","",22,[[],["result",4]]],[11,"try_into","","",22,[[],["result",4]]],[11,"borrow","","",22,[[]]],[11,"borrow_mut","","",22,[[]]],[11,"type_id","","",22,[[],["typeid",3]]],[11,"equivalent","","",22,[[]]],[11,"vzip","","",22,[[]]],[11,"from","bdk::descriptor::error","",24,[[]]],[11,"into","","",24,[[]]],[11,"to_string","","",24,[[],["string",3]]],[11,"try_from","","",24,[[],["result",4]]],[11,"try_into","","",24,[[],["result",4]]],[11,"borrow","","",24,[[]]],[11,"borrow_mut","","",24,[[]]],[11,"type_id","","",24,[[],["typeid",3]]],[11,"vzip","","",24,[[]]],[11,"from","bdk::descriptor::policy","",64,[[]]],[11,"into","","",64,[[]]],[11,"to_owned","","",64,[[]]],[11,"clone_into","","",64,[[]]],[11,"try_from","","",64,[[],["result",4]]],[11,"try_into","","",64,[[],["result",4]]],[11,"borrow","","",64,[[]]],[11,"borrow_mut","","",64,[[]]],[11,"type_id","","",64,[[],["typeid",3]]],[11,"vzip","","",64,[[]]],[11,"from","","",25,[[]]],[11,"into","","",25,[[]]],[11,"to_owned","","",25,[[]]],[11,"clone_into","","",25,[[]]],[11,"try_from","","",25,[[],["result",4]]],[11,"try_into","","",25,[[],["result",4]]],[11,"borrow","","",25,[[]]],[11,"borrow_mut","","",25,[[]]],[11,"type_id","","",25,[[],["typeid",3]]],[11,"vzip","","",25,[[]]],[11,"from","","",26,[[]]],[11,"into","","",26,[[]]],[11,"to_owned","","",26,[[]]],[11,"clone_into","","",26,[[]]],[11,"try_from","","",26,[[],["result",4]]],[11,"try_into","","",26,[[],["result",4]]],[11,"borrow","","",26,[[]]],[11,"borrow_mut","","",26,[[]]],[11,"type_id","","",26,[[],["typeid",3]]],[11,"equivalent","","",26,[[]]],[11,"vzip","","",26,[[]]],[11,"from","","",27,[[]]],[11,"into","","",27,[[]]],[11,"to_owned","","",27,[[]]],[11,"clone_into","","",27,[[]]],[11,"try_from","","",27,[[],["result",4]]],[11,"try_into","","",27,[[],["result",4]]],[11,"borrow","","",27,[[]]],[11,"borrow_mut","","",27,[[]]],[11,"type_id","","",27,[[],["typeid",3]]],[11,"vzip","","",27,[[]]],[11,"from","","",36,[[]]],[11,"into","","",36,[[]]],[11,"to_owned","","",36,[[]]],[11,"clone_into","","",36,[[]]],[11,"try_from","","",36,[[],["result",4]]],[11,"try_into","","",36,[[],["result",4]]],[11,"borrow","","",36,[[]]],[11,"borrow_mut","","",36,[[]]],[11,"type_id","","",36,[[],["typeid",3]]],[11,"vzip","","",36,[[]]],[11,"from","","",40,[[]]],[11,"into","","",40,[[]]],[11,"to_string","","",40,[[],["string",3]]],[11,"try_from","","",40,[[],["result",4]]],[11,"try_into","","",40,[[],["result",4]]],[11,"borrow","","",40,[[]]],[11,"borrow_mut","","",40,[[]]],[11,"type_id","","",40,[[],["typeid",3]]],[11,"vzip","","",40,[[]]],[11,"from","bdk::wallet","",57,[[]]],[11,"into","","",57,[[]]],[11,"try_from","","",57,[[],["result",4]]],[11,"try_into","","",57,[[],["result",4]]],[11,"borrow","","",57,[[]]],[11,"borrow_mut","","",57,[[]]],[11,"type_id","","",57,[[],["typeid",3]]],[11,"vzip","","",57,[[]]],[11,"from","bdk::wallet::address_validator","",43,[[]]],[11,"into","","",43,[[]]],[11,"to_owned","","",43,[[]]],[11,"clone_into","","",43,[[]]],[11,"to_string","","",43,[[],["string",3]]],[11,"try_from","","",43,[[],["result",4]]],[11,"try_into","","",43,[[],["result",4]]],[11,"borrow","","",43,[[]]],[11,"borrow_mut","","",43,[[]]],[11,"type_id","","",43,[[],["typeid",3]]],[11,"equivalent","","",43,[[]]],[11,"vzip","","",43,[[]]],[11,"from","bdk::wallet::coin_selection","",45,[[]]],[11,"into","","",45,[[]]],[11,"try_from","","",45,[[],["result",4]]],[11,"try_into","","",45,[[],["result",4]]],[11,"borrow","","",45,[[]]],[11,"borrow_mut","","",45,[[]]],[11,"type_id","","",45,[[],["typeid",3]]],[11,"vzip","","",45,[[]]],[11,"from","","",65,[[]]],[11,"into","","",65,[[]]],[11,"try_from","","",65,[[],["result",4]]],[11,"try_into","","",65,[[],["result",4]]],[11,"borrow","","",65,[[]]],[11,"borrow_mut","","",65,[[]]],[11,"type_id","","",65,[[],["typeid",3]]],[11,"vzip","","",65,[[]]],[11,"from","bdk::wallet::export","",47,[[]]],[11,"into","","",47,[[]]],[11,"to_string","","",47,[[],["string",3]]],[11,"try_from","","",47,[[],["result",4]]],[11,"try_into","","",47,[[],["result",4]]],[11,"borrow","","",47,[[]]],[11,"borrow_mut","","",47,[[]]],[11,"type_id","","",47,[[],["typeid",3]]],[11,"vzip","","",47,[[]]],[11,"from","bdk::wallet::signer","",48,[[]]],[11,"into","","",48,[[]]],[11,"to_owned","","",48,[[]]],[11,"clone_into","","",48,[[]]],[11,"try_from","","",48,[[],["result",4]]],[11,"try_into","","",48,[[],["result",4]]],[11,"borrow","","",48,[[]]],[11,"borrow_mut","","",48,[[]]],[11,"type_id","","",48,[[],["typeid",3]]],[11,"equivalent","","",48,[[]]],[11,"vzip","","",48,[[]]],[11,"from","","",52,[[]]],[11,"into","","",52,[[]]],[11,"to_owned","","",52,[[]]],[11,"clone_into","","",52,[[]]],[11,"try_from","","",52,[[],["result",4]]],[11,"try_into","","",52,[[],["result",4]]],[11,"borrow","","",52,[[]]],[11,"borrow_mut","","",52,[[]]],[11,"type_id","","",52,[[],["typeid",3]]],[11,"vzip","","",52,[[]]],[11,"from","","",49,[[]]],[11,"into","","",49,[[]]],[11,"to_owned","","",49,[[]]],[11,"clone_into","","",49,[[]]],[11,"try_from","","",49,[[],["result",4]]],[11,"try_into","","",49,[[],["result",4]]],[11,"borrow","","",49,[[]]],[11,"borrow_mut","","",49,[[]]],[11,"type_id","","",49,[[],["typeid",3]]],[11,"equivalent","","",49,[[]]],[11,"vzip","","",49,[[]]],[11,"from","","",50,[[]]],[11,"into","","",50,[[]]],[11,"to_owned","","",50,[[]]],[11,"clone_into","","",50,[[]]],[11,"to_string","","",50,[[],["string",3]]],[11,"try_from","","",50,[[],["result",4]]],[11,"try_into","","",50,[[],["result",4]]],[11,"borrow","","",50,[[]]],[11,"borrow_mut","","",50,[[]]],[11,"type_id","","",50,[[],["typeid",3]]],[11,"equivalent","","",50,[[]]],[11,"vzip","","",50,[[]]],[11,"from","bdk::wallet::tx_builder","",55,[[]]],[11,"into","","",55,[[]]],[11,"try_from","","",55,[[],["result",4]]],[11,"try_into","","",55,[[],["result",4]]],[11,"borrow","","",55,[[]]],[11,"borrow_mut","","",55,[[]]],[11,"type_id","","",55,[[],["typeid",3]]],[11,"vzip","","",55,[[]]],[11,"from","","",53,[[]]],[11,"into","","",53,[[]]],[11,"to_owned","","",53,[[]]],[11,"clone_into","","",53,[[]]],[11,"try_from","","",53,[[],["result",4]]],[11,"try_into","","",53,[[],["result",4]]],[11,"borrow","","",53,[[]]],[11,"borrow_mut","","",53,[[]]],[11,"type_id","","",53,[[],["typeid",3]]],[11,"equivalent","","",53,[[]]],[11,"vzip","","",53,[[]]],[11,"from","","",54,[[]]],[11,"into","","",54,[[]]],[11,"to_owned","","",54,[[]]],[11,"clone_into","","",54,[[]]],[11,"try_from","","",54,[[],["result",4]]],[11,"try_into","","",54,[[],["result",4]]],[11,"borrow","","",54,[[]]],[11,"borrow_mut","","",54,[[]]],[11,"type_id","","",54,[[],["typeid",3]]],[11,"equivalent","","",54,[[]]],[11,"vzip","","",54,[[]]],[11,"partial_cmp","bdk::descriptor","",22,[[["terminal",4]],[["option",4],["ordering",4]]]],[11,"lt","","",22,[[["terminal",4]]]],[11,"le","","",22,[[["terminal",4]]]],[11,"gt","","",22,[[["terminal",4]]]],[11,"ge","","",22,[[["terminal",4]]]],[11,"partial_cmp","","",62,[[["legacy",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",18,[[["descriptor",4]],[["option",4],["ordering",4]]]],[11,"lt","","",18,[[["descriptor",4]]]],[11,"le","","",18,[[["descriptor",4]]]],[11,"gt","","",18,[[["descriptor",4]]]],[11,"ge","","",18,[[["descriptor",4]]]],[11,"partial_cmp","","",63,[[["segwitv0",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",19,[[["miniscript",3]],[["option",4],["ordering",4]]]],[11,"fmt","","",63,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",22,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",19,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",18,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",62,[[["formatter",3]],[["result",4],["error",3]]]],[11,"hash","","",19,[[]]],[11,"hash","","",22,[[]]],[11,"cmp","","",62,[[["legacy",4]],["ordering",4]]],[11,"cmp","","",63,[[["segwitv0",4]],["ordering",4]]],[11,"cmp","","",22,[[["terminal",4]],["ordering",4]]],[11,"cmp","","",19,[[["miniscript",3]],["ordering",4]]],[11,"cmp","","",18,[[["descriptor",4]],["ordering",4]]],[11,"fmt","","",22,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",19,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",18,[[["formatter",3]],[["result",4],["error",3]]]],[11,"check_frag_non_malleable","","",63,[[["terminal",4]],[["scriptcontexterror",4],["result",4]]]],[11,"check_frag_validity","","",63,[[["terminal",4]],[["scriptcontexterror",4],["result",4]]]],[11,"check_frag_non_malleable","","",62,[[["terminal",4]],[["scriptcontexterror",4],["result",4]]]],[11,"check_frag_validity","","",62,[[["terminal",4]],[["scriptcontexterror",4],["result",4]]]],[11,"clone","","",19,[[],["miniscript",3]]],[11,"clone","","",22,[[],["terminal",4]]],[11,"clone","","",63,[[],["segwitv0",4]]],[11,"clone","","",18,[[],["descriptor",4]]],[11,"clone","","",62,[[],["legacy",4]]],[11,"eq","","",62,[[["legacy",4]]]],[11,"eq","","",22,[[["terminal",4]]]],[11,"ne","","",22,[[["terminal",4]]]],[11,"eq","","",63,[[["segwitv0",4]]]],[11,"eq","","",19,[[["miniscript",3]]]],[11,"eq","","",18,[[["descriptor",4]]]],[11,"ne","","",18,[[["descriptor",4]]]],[11,"from_str","","",19,[[],[["result",4],["error",4],["miniscript",3]]]],[11,"from_str","","",18,[[],[["error",4],["descriptor",4],["result",4]]]],[11,"from_tree","","Parse an expression tree into a Miniscript. As a general…",19,[[["tree",3]],[["result",4],["error",4],["miniscript",3]]]],[11,"from_tree","","",22,[[["tree",3]],[["error",4],["result",4],["terminal",4]]]],[11,"from_tree","","Parse an expression tree into a descriptor",18,[[["tree",3]],[["error",4],["descriptor",4],["result",4]]]],[11,"lift","","",18,[[],["policy",4]]],[11,"lift","","",19,[[],["policy",4]]],[11,"lift","","",22,[[],["policy",4]]],[11,"update","bdk::blockchain","",59,[[["string",3],["option",4]],[["result",4],["error",4]]]],[11,"update","","",60,[[["string",3],["option",4]],[["result",4],["error",4]]]],[11,"set_script_pubkey","bdk::database::memory","",14,[[["scripttype",4],["script",3]],[["result",4],["error",4]]]],[11,"set_utxo","","",14,[[["utxo",3]],[["result",4],["error",4]]]],[11,"set_raw_tx","","",14,[[["transaction",3]],[["result",4],["error",4]]]],[11,"set_tx","","",14,[[["transactiondetails",3]],[["result",4],["error",4]]]],[11,"set_last_index","","",14,[[["scripttype",4]],[["result",4],["error",4]]]],[11,"del_script_pubkey_from_path","","",14,[[["scripttype",4]],[["option",4],["error",4],["result",4]]]],[11,"del_path_from_script_pubkey","","",14,[[["script",3]],[["error",4],["result",4],["option",4]]]],[11,"del_utxo","","",14,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"del_raw_tx","","",14,[[["txid",3]],[["error",4],["result",4],["option",4]]]],[11,"del_tx","","",14,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_last_index","","",14,[[["scripttype",4]],[["result",4],["option",4],["error",4]]]],[11,"check_descriptor_checksum","","",14,[[["scripttype",4],["asref",8]],[["result",4],["error",4]]]],[11,"iter_script_pubkeys","","",14,[[["scripttype",4],["option",4]],[["error",4],["vec",3],["result",4]]]],[11,"iter_utxos","","",14,[[],[["vec",3],["result",4],["error",4]]]],[11,"iter_raw_txs","","",14,[[],[["result",4],["vec",3],["error",4]]]],[11,"iter_txs","","",14,[[],[["result",4],["vec",3],["error",4]]]],[11,"get_script_pubkey_from_path","","",14,[[["scripttype",4]],[["option",4],["error",4],["result",4]]]],[11,"get_path_from_script_pubkey","","",14,[[["script",3]],[["error",4],["result",4],["option",4]]]],[11,"get_utxo","","",14,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"get_raw_tx","","",14,[[["txid",3]],[["error",4],["result",4],["option",4]]]],[11,"get_tx","","",14,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"get_last_index","","",14,[[["scripttype",4]],[["result",4],["option",4],["error",4]]]],[11,"increment_last_index","","",14,[[["scripttype",4]],[["error",4],["result",4]]]],[11,"begin_batch","","",14,[[]]],[11,"commit_batch","","",14,[[],[["result",4],["error",4]]]],[11,"extract_policy","bdk::descriptor","",19,[[["signerscontainer",3],["arc",3]],[["error",4],["option",4],["result",4]]]],[11,"extract_policy","","",18,[[["signerscontainer",3],["arc",3]],[["error",4],["option",4],["result",4]]]],[11,"coin_select","bdk::wallet::coin_selection","",65,[[["vec",3],["feerate",3],["utxo",3]],[["error",4],["result",4],["coinselectionresult",3]]]],[11,"get_capabilities","bdk::blockchain::electrum","",61,[[],[["hashset",3],["capability",4]]]],[11,"setup","","",61,[[["progress",8],["option",4]],[["result",4],["error",4]]]],[11,"get_tx","","",61,[[["txid",3]],[["error",4],["result",4],["option",4]]]],[11,"broadcast","","",61,[[["transaction",3]],[["result",4],["error",4]]]],[11,"get_height","","",61,[[],[["error",4],["result",4]]]],[11,"estimate_fee","","",61,[[],[["feerate",3],["result",4],["error",4]]]],[11,"get_capabilities","bdk::blockchain::esplora","",7,[[],[["hashset",3],["capability",4]]]],[11,"setup","","",7,[[["progress",8],["option",4]],[["result",4],["error",4]]]],[11,"get_tx","","",7,[[["txid",3]],[["error",4],["result",4],["option",4]]]],[11,"broadcast","","",7,[[["transaction",3]],[["result",4],["error",4]]]],[11,"get_height","","",7,[[],[["error",4],["result",4]]]],[11,"estimate_fee","","",7,[[],[["feerate",3],["result",4],["error",4]]]],[11,"get_capabilities","bdk::blockchain::compact_filters","",11,[[],[["hashset",3],["capability",4]]]],[11,"setup","","",11,[[["progress",8],["option",4]],[["result",4],["error",4]]]],[11,"get_tx","","",11,[[["txid",3]],[["error",4],["result",4],["option",4]]]],[11,"broadcast","","",11,[[["transaction",3]],[["result",4],["error",4]]]],[11,"get_height","","",11,[[],[["error",4],["result",4]]]],[11,"estimate_fee","","",11,[[],[["feerate",3],["result",4],["error",4]]]],[11,"as_ref","bdk","",4,[[]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["addressvalidatorerror",4]]]],[11,"from","","",2,[[["policyerror",4]]]],[11,"from","","",2,[[["signererror",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["error",3]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["esploraerror",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["compactfilterserror",4]]]],[11,"from","bdk::blockchain::electrum","",61,[[["client",4]]]],[11,"from","bdk::blockchain::esplora","",6,[[["error",3]]]],[11,"from","","",6,[[["parseinterror",3]]]],[11,"from","","",6,[[["error",4]]]],[11,"from","bdk::blockchain::compact_filters","",8,[[["error",3]]]],[11,"from","","",8,[[["error",3]]]],[11,"from","","",8,[[["error",4]]]],[11,"from","","",8,[[["systemtimeerror",3]]]],[11,"from","","",8,[[["error",4]]]],[11,"from","bdk::descriptor::error","",24,[[["error",4]]]],[11,"from","","",24,[[["error",4]]]],[11,"from","","",24,[[["error",4]]]],[11,"from","","",24,[[["error",4]]]],[11,"from","","",24,[[["error",4]]]],[11,"from","","",24,[[["policyerror",4]]]],[11,"from","bdk::descriptor::policy","",36,[[]]],[11,"from","","",25,[[["satisfiableitem",4]]]],[11,"from","bdk::wallet::signer","",49,[[["hash",3]],[["signerid",4],["descriptorpublickey",4]]]],[11,"from","","",49,[[["fingerprint",3]],[["signerid",4],["descriptorpublickey",4]]]],[11,"from","","",52,[[["keymap",6]],[["signerscontainer",3],["descriptorpublickey",4]]]],[11,"clone","bdk::blockchain","",5,[[],["capability",4]]],[11,"clone","","",59,[[],["noopprogress",3]]],[11,"clone","","",60,[[],["logprogress",3]]],[11,"clone","bdk::descriptor::policy","",64,[[],["pkorf",3]]],[11,"clone","","",27,[[],["satisfiableitem",4]]],[11,"clone","","",36,[[],["satisfaction",4]]],[11,"clone","","",25,[[],["policy",3]]],[11,"clone","","",26,[[],["condition",3]]],[11,"clone","bdk","",4,[[],["scripttype",4]]],[11,"clone","","",42,[[],["feerate",3]]],[11,"clone","","",0,[[],["utxo",3]]],[11,"clone","","",1,[[],["transactiondetails",3]]],[11,"clone","bdk::wallet::address_validator","",43,[[],["addressvalidatorerror",4]]],[11,"clone","bdk::wallet::signer","",49,[[],["signerid",4]]],[11,"clone","","",50,[[],["signererror",4]]],[11,"clone","","",48,[[],["signerordering",3]]],[11,"clone","","",52,[[],["signerscontainer",3]]],[11,"clone","bdk::wallet::tx_builder","",53,[[],["txordering",4]]],[11,"clone","","",54,[[],["changespendpolicy",4]]],[11,"default","bdk::blockchain::compact_filters","",9,[[],["mempool",3]]],[11,"default","bdk::database::memory","",14,[[],["memorydatabase",3]]],[11,"default","bdk::descriptor::policy","",64,[[],["pkorf",3]]],[11,"default","","",26,[[],["condition",3]]],[11,"default","bdk","",42,[[]]],[11,"default","","",1,[[],["transactiondetails",3]]],[11,"default","bdk::wallet::coin_selection","",65,[[],["dumbcoinselection",3]]],[11,"default","bdk::wallet::signer","",48,[[]]],[11,"default","","",52,[[],["signerscontainer",3]]],[11,"default","bdk::wallet::tx_builder","",55,[[],["txbuilder",3]]],[11,"default","","",53,[[]]],[11,"default","","",54,[[]]],[11,"cmp","bdk::descriptor::policy","",26,[[["condition",3]],["ordering",4]]],[11,"cmp","bdk::wallet::signer","",48,[[["signerordering",3]],["ordering",4]]],[11,"cmp","bdk::wallet::tx_builder","",53,[[["txordering",4]],["ordering",4]]],[11,"cmp","","",54,[[["changespendpolicy",4]],["ordering",4]]],[11,"eq","bdk::blockchain","",5,[[["capability",4]]]],[11,"eq","bdk::descriptor::policy","",26,[[["condition",3]]]],[11,"ne","","",26,[[["condition",3]]]],[11,"eq","bdk","",4,[[["scripttype",4]]]],[11,"eq","","",42,[[["feerate",3]]]],[11,"ne","","",42,[[["feerate",3]]]],[11,"eq","","",0,[[["utxo",3]]]],[11,"ne","","",0,[[["utxo",3]]]],[11,"eq","","",1,[[["transactiondetails",3]]]],[11,"ne","","",1,[[["transactiondetails",3]]]],[11,"eq","bdk::wallet::address_validator","",43,[[["addressvalidatorerror",4]]]],[11,"ne","","",43,[[["addressvalidatorerror",4]]]],[11,"eq","bdk::wallet::signer","",49,[[["signerid",4]]]],[11,"ne","","",49,[[["signerid",4]]]],[11,"eq","","",50,[[["signererror",4]]]],[11,"eq","","",48,[[["signerordering",3]]]],[11,"ne","","",48,[[["signerordering",3]]]],[11,"eq","bdk::wallet::tx_builder","",53,[[["txordering",4]]]],[11,"eq","","",54,[[["changespendpolicy",4]]]],[11,"partial_cmp","bdk::descriptor::policy","",26,[[["condition",3]],[["option",4],["ordering",4]]]],[11,"lt","","",26,[[["condition",3]]]],[11,"le","","",26,[[["condition",3]]]],[11,"gt","","",26,[[["condition",3]]]],[11,"ge","","",26,[[["condition",3]]]],[11,"partial_cmp","bdk","",42,[[["feerate",3]],[["option",4],["ordering",4]]]],[11,"lt","","",42,[[["feerate",3]]]],[11,"le","","",42,[[["feerate",3]]]],[11,"gt","","",42,[[["feerate",3]]]],[11,"ge","","",42,[[["feerate",3]]]],[11,"partial_cmp","bdk::wallet::signer","",48,[[["signerordering",3]],[["option",4],["ordering",4]]]],[11,"lt","","",48,[[["signerordering",3]]]],[11,"le","","",48,[[["signerordering",3]]]],[11,"gt","","",48,[[["signerordering",3]]]],[11,"ge","","",48,[[["signerordering",3]]]],[11,"partial_cmp","bdk::wallet::tx_builder","",53,[[["txordering",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",54,[[["changespendpolicy",4]],[["option",4],["ordering",4]]]],[11,"to_string","bdk::wallet::export","",47,[[],["string",3]]],[11,"fmt","bdk","",2,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::esplora","",7,[[["formatter",3]],["result",6]]],[11,"fmt","","",6,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::compact_filters","",9,[[["formatter",3]],["result",6]]],[11,"fmt","","",10,[[["formatter",3]],["result",6]]],[11,"fmt","","",11,[[["formatter",3]],["result",6]]],[11,"fmt","","",8,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain","",5,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::database::memory","",14,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::error","",24,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::policy","",64,[[["formatter",3]],["result",6]]],[11,"fmt","","",27,[[["formatter",3]],["result",6]]],[11,"fmt","","",36,[[["formatter",3]],["result",6]]],[11,"fmt","","",25,[[["formatter",3]],["result",6]]],[11,"fmt","","",26,[[["formatter",3]],["result",6]]],[11,"fmt","","",40,[[["formatter",3]],["result",6]]],[11,"fmt","bdk","",4,[[["formatter",3]],["result",6]]],[11,"fmt","","",42,[[["formatter",3]],["result",6]]],[11,"fmt","","",0,[[["formatter",3]],["result",6]]],[11,"fmt","","",1,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::address_validator","",43,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::coin_selection","",45,[[["formatter",3]],["result",6]]],[11,"fmt","","",65,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::export","",47,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::signer","",49,[[["formatter",3]],["result",6]]],[11,"fmt","","",50,[[["formatter",3]],["result",6]]],[11,"fmt","","",48,[[["formatter",3]],["result",6]]],[11,"fmt","","",52,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::tx_builder","",55,[[["formatter",3]],["result",6]]],[11,"fmt","","",53,[[["formatter",3]],["result",6]]],[11,"fmt","","",54,[[["formatter",3]],["result",6]]],[11,"fmt","bdk","",2,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::esplora","",6,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::compact_filters","",8,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::error","",24,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::policy","",40,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::address_validator","",43,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::signer","",50,[[["formatter",3]],["result",6]]],[11,"hash","bdk::blockchain","",5,[[]]],[11,"hash","bdk::descriptor::policy","",26,[[]]],[11,"hash","bdk","",4,[[]]],[11,"hash","bdk::wallet::signer","",49,[[]]],[11,"hash","bdk::wallet::tx_builder","",53,[[]]],[11,"hash","","",54,[[]]],[11,"from_str","bdk::wallet::export","",47,[[],["result",4]]],[11,"serialize","bdk::descriptor::policy","",64,[[],["result",4]]],[11,"serialize","","",27,[[],["result",4]]],[11,"serialize","","",36,[[],["result",4]]],[11,"serialize","","",25,[[],["result",4]]],[11,"serialize","","",26,[[],["result",4]]],[11,"serialize","bdk","",4,[[],["result",4]]],[11,"serialize","","",0,[[],["result",4]]],[11,"serialize","","",1,[[],["result",4]]],[11,"serialize","bdk::wallet::export","",47,[[],["result",4]]],[11,"deserialize","bdk","",4,[[],["result",4]]],[11,"deserialize","","",0,[[],["result",4]]],[11,"deserialize","","",1,[[],["result",4]]],[11,"deserialize","bdk::wallet::export","",47,[[],["result",4]]],[11,"translate_pk","bdk::descriptor","Convert a descriptor using abstract keys to one using…",18,[[],[["result",4],["descriptor",4]]]],[11,"address","","Computes the Bitcoin address of the descriptor, if one…",18,[[["network",4]],[["option",4],["address",3]]]],[11,"script_pubkey","","Computes the scriptpubkey of the descriptor",18,[[],["script",3]]],[11,"unsigned_script_sig","","Computes the scriptSig that will be in place for an…",18,[[],["script",3]]],[11,"witness_script","","Computes the \\\"witness script\\\" of the descriptor, i.e. the…",18,[[],["script",3]]],[11,"satisfy","","Attempts to produce a satisfying witness and scriptSig to…",18,[[["txin",3]],[["error",4],["result",4]]]],[11,"max_satisfaction_weight","","Computes an upper bound on the weight of a satisfying…",18,[[]]],[11,"derive","","Derives all wildcard keys in the descriptor using the…",18,[[],[["descriptor",4],["descriptorpublickey",4]]]],[11,"parse_secret","","",18,[[],[["result",4],["error",4]]]],[11,"to_string_with_secret","","",18,[[["hashmap",3]],["string",3]]],[11,"from_ast","","Add type information(Type and Extdata) to Miniscript based…",19,[[["terminal",4]],[["result",4],["error",4],["miniscript",3]]]],[11,"into_inner","","Extracts the `AstElem` representing the root of the…",19,[[],["terminal",4]]],[11,"as_inner","","",19,[[],["terminal",4]]],[11,"parse","","Attempt to parse a script into a Miniscript representation",19,[[["script",3]],[["error",4],["miniscript",3],["result",4]]]],[11,"encode","","Encode as a Bitcoin script",19,[[],["script",3]]],[11,"script_size","","Size, in bytes of the script-pubkey. If this Miniscript is…",19,[[]]],[11,"max_satisfaction_witness_elements","","Maximum number of witness elements used to satisfy the…",19,[[]]],[11,"max_satisfaction_size","","Maximum size, in bytes, of a satisfying witness. For…",19,[[]]],[11,"translate_pk","","This will panic if translatefpk returns an uncompressed…",19,[[],[["result",4],["miniscript",3]]]],[11,"satisfy","","Attempt to produce a satisfying witness for the witness…",19,[[],[["option",4],["vec",3]]]],[11,"translate_pk","","Convert an AST element with one public key type to one of…",22,[[],[["result",4],["terminal",4]]]],[11,"encode","","Encode the element as a fragment of Bitcoin Script. The…",22,[[["builder",3]],["builder",3]]],[11,"script_size","","Size, in bytes of the script-pubkey. If this Miniscript is…",22,[[]]],[11,"max_dissatisfaction_witness_elements","","Maximum number of witness elements used to dissatisfy the…",22,[[],["option",4]]],[11,"max_dissatisfaction_size","","Maximum dissatisfaction cost, in bytes, of a Miniscript…",22,[[],["option",4]]],[11,"max_satisfaction_witness_elements","","Maximum number of witness elements used to satisfy the…",22,[[]]],[11,"max_satisfaction_size","","Maximum size, in bytes, of a satisfying witness. For…",22,[[]]]],"p":[[3,"UTXO"],[3,"TransactionDetails"],[4,"Error"],[13,"FeeRateTooLow"],[4,"ScriptType"],[4,"Capability"],[4,"EsploraError"],[3,"EsploraBlockchain"],[4,"CompactFiltersError"],[3,"Mempool"],[3,"Peer"],[3,"CompactFiltersBlockchain"],[8,"Blockchain"],[8,"Progress"],[3,"MemoryDatabase"],[8,"BatchOperations"],[8,"Database"],[8,"BatchDatabase"],[4,"Descriptor"],[3,"Miniscript"],[8,"MiniscriptKey"],[8,"ScriptContext"],[4,"Terminal"],[8,"ToPublicKey"],[4,"Error"],[3,"Policy"],[3,"Condition"],[4,"SatisfiableItem"],[13,"SHA256Preimage"],[13,"HASH256Preimage"],[13,"RIPEMD160Preimage"],[13,"HASH160Preimage"],[13,"AbsoluteTimelock"],[13,"RelativeTimelock"],[13,"Thresh"],[13,"Multisig"],[4,"Satisfaction"],[13,"Partial"],[13,"PartialComplete"],[13,"Complete"],[4,"PolicyError"],[8,"ExtractPolicy"],[3,"FeeRate"],[4,"AddressValidatorError"],[8,"AddressValidator"],[3,"CoinSelectionResult"],[8,"CoinSelectionAlgorithm"],[3,"WalletExport"],[3,"SignerOrdering"],[4,"SignerId"],[4,"SignerError"],[8,"Signer"],[3,"SignersContainer"],[4,"TxOrdering"],[4,"ChangeSpendPolicy"],[3,"TxBuilder"],[8,"IsDust"],[3,"Wallet"],[3,"OfflineBlockchain"],[3,"NoopProgress"],[3,"LogProgress"],[3,"ElectrumBlockchain"],[4,"Legacy"],[4,"Segwitv0"],[3,"PKOrF"],[3,"DumbCoinSelection"]]}\ +"bdk":{"doc":"","i":[[3,"FeeRate","bdk","Fee rate",null,null],[3,"UTXO","","A wallet unspent output",null,null],[12,"outpoint","","",0,null],[12,"txout","","",0,null],[12,"is_internal","","",0,null],[3,"TransactionDetails","","A wallet transaction",null,null],[12,"transaction","","",1,null],[12,"txid","","",1,null],[12,"timestamp","","",1,null],[12,"received","","",1,null],[12,"sent","","",1,null],[12,"fees","","",1,null],[12,"height","","",1,null],[4,"Error","","Errors that can be thrown by the `Wallet`",null,null],[13,"KeyMismatch","","",2,null],[13,"MissingInputUTXO","","",2,null],[13,"InvalidU32Bytes","","",2,null],[13,"Generic","","",2,null],[13,"ScriptDoesntHaveAddressForm","","",2,null],[13,"SendAllMultipleOutputs","","",2,null],[13,"NoAddressees","","",2,null],[13,"OutputBelowDustLimit","","",2,null],[13,"InsufficientFunds","","",2,null],[13,"InvalidAddressNetwork","","",2,null],[13,"UnknownUTXO","","",2,null],[13,"DifferentTransactions","","",2,null],[13,"TransactionNotFound","","",2,null],[13,"TransactionConfirmed","","",2,null],[13,"IrreplaceableTransaction","","",2,null],[13,"FeeRateTooLow","","",2,null],[12,"required","bdk::Error","",3,null],[13,"ChecksumMismatch","bdk","",2,null],[13,"DifferentDescriptorStructure","","",2,null],[13,"SpendingPolicyRequired","","",2,null],[13,"InvalidPolicyPathError","","",2,null],[13,"Signer","","",2,null],[13,"Uncapable","","",2,null],[13,"OfflineClient","","",2,null],[13,"InvalidProgressValue","","",2,null],[13,"ProgressUpdateError","","",2,null],[13,"MissingCachedAddresses","","",2,null],[13,"InvalidOutpoint","","",2,null],[13,"Descriptor","","",2,null],[13,"AddressValidator","","",2,null],[13,"Encode","","",2,null],[13,"Miniscript","","",2,null],[13,"BIP32","","",2,null],[13,"Secp256k1","","",2,null],[13,"JSON","","",2,null],[13,"Hex","","",2,null],[13,"PSBT","","",2,null],[13,"Electrum","","",2,null],[13,"Esplora","","",2,null],[13,"CompactFilters","","",2,null],[13,"Sled","","",2,null],[4,"ScriptType","","Types of script",null,null],[13,"External","","",4,null],[13,"Internal","","",4,null],[0,"blockchain","","Blockchain backends",null,null],[3,"OfflineBlockchain","bdk::blockchain","Type that only implements [`Blockchain`] and is always…",null,null],[3,"NoopProgress","","Type that implements [`Progress`] and drops every update…",null,null],[3,"LogProgress","","Type that implements [`Progress`] and logs at level `INFO`…",null,null],[4,"Capability","","Capabilities that can be supported by a [`Blockchain`]…",null,null],[13,"FullHistory","","Can recover the full history of a wallet and not only the…",5,null],[13,"GetAnyTx","","Can fetch any historical transaction given its txid",5,null],[13,"AccurateFees","","Can compute accurate fees for the transactions found…",5,null],[5,"progress","","Shortcut to create a [`channel`] (pair of [`Sender`] and…",null,[[]]],[5,"noop_progress","","Create a new instance of [`NoopProgress`]",null,[[],["noopprogress",3]]],[5,"log_progress","","Create a nwe instance of [`LogProgress`]",null,[[],["logprogress",3]]],[0,"electrum","","Electrum",null,null],[3,"ElectrumBlockchain","bdk::blockchain::electrum","Wrapper over an Electrum Client that implements the…",null,null],[0,"esplora","bdk::blockchain","Esplora",null,null],[3,"EsploraBlockchain","bdk::blockchain::esplora","Structure that implements the logic to sync with Esplora",null,null],[4,"EsploraError","","Errors that can happen during a sync with…",null,null],[13,"Reqwest","","Error with the HTTP call",6,null],[13,"Parsing","","Invalid number returned",6,null],[13,"BitcoinEncoding","","Invalid Bitcoin data returned",6,null],[13,"TransactionNotFound","","Transaction not found",6,null],[11,"new","","Create a new instance of the client from a base URL",7,[[]]],[0,"compact_filters","bdk::blockchain","Compact Filters",null,null],[3,"Mempool","bdk::blockchain::compact_filters","Container for unconfirmed, but valid Bitcoin transactions",null,null],[3,"Peer","","A Bitcoin peer",null,null],[3,"CompactFiltersBlockchain","","Structure implementing the required blockchain traits",null,null],[4,"CompactFiltersError","","An error that can occur during sync with a…",null,null],[13,"InvalidResponse","","A peer sent an invalid or unexpected response",8,null],[13,"InvalidHeaders","","The headers returned are invalid",8,null],[13,"InvalidFilterHeader","","The compact filter headers returned are invalid",8,null],[13,"InvalidFilter","","The compact filter returned is invalid",8,null],[13,"MissingBlock","","The peer is missing a block in the valid chain",8,null],[13,"DataCorruption","","The data stored in the block filters storage are corrupted",8,null],[13,"NotConnected","","A peer is not connected",8,null],[13,"Timeout","","A peer took too long to reply to one of our messages",8,null],[13,"NoPeers","","No peers have been specified",8,null],[13,"DB","","Internal database error",8,null],[13,"IO","","Internal I/O error",8,null],[13,"BIP158","","Invalid BIP158 filter",8,null],[13,"Time","","Internal system time error",8,null],[13,"Global","","Wrapper for [`crate::error::Error`]",8,null],[11,"add_tx","","Add a transaction to the mempool",9,[[["transaction",3]]]],[11,"get_tx","","Look-up a transaction in the mempool given an…",9,[[["inventory",4]],[["option",4],["transaction",3]]]],[11,"has_tx","","Return whether or not the mempool contains a transaction…",9,[[["txid",3]]]],[11,"iter_txs","","Return the list of transactions contained in the mempool",9,[[],[["transaction",3],["vec",3]]]],[11,"connect","","Connect to a peer over a plaintext TCP connection",10,[[["tosocketaddrs",8],["network",4],["arc",3],["mempool",3]],[["result",4],["compactfilterserror",4]]]],[11,"connect_proxy","","Connect to a peer through a SOCKS5 proxy, optionally by…",10,[[["tosocketaddrs",8],["option",4],["totargetaddr",8],["arc",3],["mempool",3],["network",4]],[["result",4],["compactfilterserror",4]]]],[11,"get_version","","Return the [`VersionMessage`] sent by the peer",10,[[],["versionmessage",3]]],[11,"get_network","","Return the Bitcoin [`Network`] in use",10,[[],["network",4]]],[11,"get_mempool","","Return the mempool used by this peer",10,[[],[["arc",3],["mempool",3]]]],[11,"is_connected","","Return whether or not the peer is still connected",10,[[]]],[11,"send","","Send a raw Bitcoin message to the peer",10,[[["networkmessage",4]],[["compactfilterserror",4],["result",4]]]],[11,"recv","","Waits for a specific incoming Bitcoin message, optionally…",10,[[["option",4],["duration",3]],[["option",4],["compactfilterserror",4],["result",4]]]],[11,"new","","Construct a new instance given a list of peers, a path to…",11,[[["asref",8],["path",3],["option",4],["vec",3],["peer",3]],[["result",4],["compactfilterserror",4]]]],[6,"ProgressData","bdk::blockchain","Data sent with a progress update over a [`channel`]",null,null],[8,"BlockchainMarker","","Marker trait for a blockchain backend",null,null],[8,"Blockchain","","Trait that defines the actions that must be supported by a…",null,null],[10,"get_capabilities","","Return the set of [`Capability`] supported by this backend",12,[[],[["capability",4],["hashset",3]]]],[10,"setup","","Setup the backend and populate the internal database for…",12,[[["progress",8],["option",4]],[["error",4],["result",4]]]],[11,"sync","","Populate the internal database with transactions and UTXOs",12,[[["progress",8],["option",4]],[["error",4],["result",4]]]],[10,"get_tx","","Fetch a transaction from the blockchain given its txid",12,[[["txid",3]],[["option",4],["result",4],["error",4]]]],[10,"broadcast","","Broadcast a transaction",12,[[["transaction",3]],[["error",4],["result",4]]]],[10,"get_height","","Return the current height",12,[[],[["result",4],["error",4]]]],[10,"estimate_fee","","Estimate the fee rate required to confirm a transaction in…",12,[[],[["feerate",3],["error",4],["result",4]]]],[8,"Progress","","Trait for types that can receive and process progress…",null,null],[10,"update","","Send a new progress update",13,[[["string",3],["option",4]],[["error",4],["result",4]]]],[0,"database","bdk","Database types",null,null],[0,"memory","bdk::database","In-memory ephemeral database",null,null],[3,"MemoryDatabase","bdk::database::memory","In-memory ephemeral database",null,null],[11,"new","","Create a new empty database",14,[[]]],[8,"BatchOperations","bdk::database","Trait for operations that can be batched",null,null],[10,"set_script_pubkey","","Store a script_pubkey along with its script type and child…",15,[[["scripttype",4],["script",3]],[["error",4],["result",4]]]],[10,"set_utxo","","Store a [`UTXO`]",15,[[["utxo",3]],[["error",4],["result",4]]]],[10,"set_raw_tx","","Store a raw transaction",15,[[["transaction",3]],[["error",4],["result",4]]]],[10,"set_tx","","Store the metadata of a transaction",15,[[["transactiondetails",3]],[["error",4],["result",4]]]],[10,"set_last_index","","Store the last derivation index for a given script type",15,[[["scripttype",4]],[["error",4],["result",4]]]],[10,"del_script_pubkey_from_path","","Delete a script_pubkey given the script type and its child…",15,[[["scripttype",4]],[["error",4],["option",4],["result",4]]]],[10,"del_path_from_script_pubkey","","Delete the data related to a specific script_pubkey,…",15,[[["script",3]],[["option",4],["error",4],["result",4]]]],[10,"del_utxo","","Delete a [`UTXO`] given its [`OutPoint`]",15,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[10,"del_raw_tx","","Delete a raw transaction given its [`Txid`]",15,[[["txid",3]],[["option",4],["result",4],["error",4]]]],[10,"del_tx","","Delete the metadata of a transaction and optionally the…",15,[[["txid",3]],[["option",4],["error",4],["result",4]]]],[10,"del_last_index","","Delete the last derivation index for a script type",15,[[["scripttype",4]],[["result",4],["option",4],["error",4]]]],[8,"Database","","Trait for reading data from a database",null,null],[10,"check_descriptor_checksum","","Read and checks the descriptor checksum for a given script…",16,[[["scripttype",4],["asref",8]],[["error",4],["result",4]]]],[10,"iter_script_pubkeys","","Return the list of script_pubkeys",16,[[["option",4],["scripttype",4]],[["result",4],["vec",3],["error",4]]]],[10,"iter_utxos","","Return the list of [`UTXO`]s",16,[[],[["result",4],["vec",3],["error",4]]]],[10,"iter_raw_txs","","Return the list of raw transactions",16,[[],[["error",4],["vec",3],["result",4]]]],[10,"iter_txs","","Return the list of transactions metadata",16,[[],[["vec",3],["result",4],["error",4]]]],[10,"get_script_pubkey_from_path","","Fetch a script_pubkey given the script type and child number",16,[[["scripttype",4]],[["error",4],["option",4],["result",4]]]],[10,"get_path_from_script_pubkey","","Fetch the script type and child number of a given…",16,[[["script",3]],[["option",4],["error",4],["result",4]]]],[10,"get_utxo","","Fetch a [`UTXO`] given its [`OutPoint`]",16,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[10,"get_raw_tx","","Fetch a raw transaction given its [`Txid`]",16,[[["txid",3]],[["option",4],["result",4],["error",4]]]],[10,"get_tx","","Fetch the transaction metadata and optionally also the raw…",16,[[["txid",3]],[["option",4],["error",4],["result",4]]]],[10,"get_last_index","","Return the last defivation index for a script type",16,[[["scripttype",4]],[["result",4],["option",4],["error",4]]]],[10,"increment_last_index","","Increment the last derivation index for a script type and…",16,[[["scripttype",4]],[["result",4],["error",4]]]],[8,"BatchDatabase","","Trait for a database that supports batch operations",null,null],[16,"Batch","","Container for the operations",17,null],[10,"begin_batch","","Create a new batch container",17,[[]]],[10,"commit_batch","","Consume and apply a batch of operations",17,[[],[["error",4],["result",4]]]],[0,"descriptor","bdk","Descriptors",null,null],[4,"Descriptor","bdk::descriptor","Script descriptor",null,null],[13,"Bare","","A raw scriptpubkey (including pay-to-pubkey) under Legacy…",18,null],[13,"Pk","","Pay-to-Pubkey",18,null],[13,"Pkh","","Pay-to-PubKey-Hash",18,null],[13,"Wpkh","","Pay-to-Witness-PubKey-Hash",18,null],[13,"ShWpkh","","Pay-to-Witness-PubKey-Hash inside P2SH",18,null],[13,"Sh","","Pay-to-ScriptHash with Legacy context",18,null],[13,"Wsh","","Pay-to-Witness-ScriptHash with Segwitv0 context",18,null],[13,"ShWsh","","P2SH-P2WSH with Segwitv0 context",18,null],[4,"Legacy","","Legacy ScriptContext",null,null],[3,"Miniscript","","Top-level script AST type",null,null],[12,"node","","A node in the Abstract Syntax Tree(",19,null],[12,"ty","","The correctness and malleability type information for the…",19,null],[12,"ext","","Additional information helpful for extra analysis.",19,null],[8,"MiniscriptKey","","Public key trait which can be converted to Hash type",null,null],[11,"is_uncompressed","","Check if the publicKey is uncompressed. The default…",20,[[]]],[16,"Hash","","The associated Hash type with the publicKey",20,null],[10,"to_pubkeyhash","","Converts an object to PublicHash",20,[[]]],[8,"ScriptContext","","",null,null],[10,"check_frag_non_malleable","","Depending on ScriptContext, fragments can be malleable.…",21,[[["terminal",4]],[["scriptcontexterror",4],["result",4]]]],[10,"check_frag_validity","","Depending on script Context, some of the Terminals might…",21,[[["terminal",4]],[["scriptcontexterror",4],["result",4]]]],[4,"Segwitv0","","Segwitv0 ScriptContext",null,null],[4,"Terminal","","All AST elements",null,null],[13,"True","","`1`",22,null],[13,"False","","`0`",22,null],[13,"PkK","","``",22,null],[13,"PkH","","`DUP HASH160 EQUALVERIFY`",22,null],[13,"After","","`n CHECKLOCKTIMEVERIFY`",22,null],[13,"Older","","`n CHECKSEQUENCEVERIFY`",22,null],[13,"Sha256","","`SIZE 32 EQUALVERIFY SHA256 EQUAL`",22,null],[13,"Hash256","","`SIZE 32 EQUALVERIFY HASH256 EQUAL`",22,null],[13,"Ripemd160","","`SIZE 32 EQUALVERIFY RIPEMD160 EQUAL`",22,null],[13,"Hash160","","`SIZE 32 EQUALVERIFY HASH160 EQUAL`",22,null],[13,"Alt","","`TOALTSTACK [E] FROMALTSTACK`",22,null],[13,"Swap","","`SWAP [E1]`",22,null],[13,"Check","","`[Kt]/[Ke] CHECKSIG`",22,null],[13,"DupIf","","`DUP IF [V] ENDIF`",22,null],[13,"Verify","","[T] VERIFY",22,null],[13,"NonZero","","SIZE 0NOTEQUAL IF [Fn] ENDIF",22,null],[13,"ZeroNotEqual","","[X] 0NOTEQUAL",22,null],[13,"AndV","","[V] [T]/[V]/[F]/[Kt]",22,null],[13,"AndB","","[E] [W] BOOLAND",22,null],[13,"AndOr","","[various] NOTIF [various] ELSE [various] ENDIF",22,null],[13,"OrB","","[E] [W] BOOLOR",22,null],[13,"OrD","","[E] IFDUP NOTIF [T]/[E] ENDIF",22,null],[13,"OrC","","[E] NOTIF [V] ENDIF",22,null],[13,"OrI","","IF [various] ELSE [various] ENDIF",22,null],[13,"Thresh","","[E] ([W] ADD)* k EQUAL",22,null],[13,"Multi","","k ()* n CHECKMULTISIG",22,null],[8,"ToPublicKey","","Trait describing public key types which can be converted…",null,null],[10,"to_public_key","","Converts an object to a public key",23,[[],["publickey",3]]],[11,"serialized_len","","Computes the size of a public key when serialized in a…",23,[[]]],[10,"hash_to_hash160","","Converts a hashed version of the public key to a `hash160`…",23,[[],["hash",3]]],[0,"checksum","","Descriptor checksum",null,null],[5,"get_checksum","bdk::descriptor::checksum","Compute the checksum of a descriptor",null,[[],[["result",4],["string",3],["error",4]]]],[0,"error","bdk::descriptor","Descriptor errors",null,null],[4,"Error","bdk::descriptor::error","Errors related to the parsing and usage of descriptors",null,null],[13,"InternalError","","",24,null],[13,"InvalidPrefix","","",24,null],[13,"HardenedDerivationOnXpub","","",24,null],[13,"MalformedInput","","",24,null],[13,"KeyParsingError","","",24,null],[13,"Policy","","",24,null],[13,"InputIndexDoesntExist","","",24,null],[13,"MissingPublicKey","","",24,null],[13,"MissingDetails","","",24,null],[13,"InvalidDescriptorCharacter","","",24,null],[13,"CantDeriveWithMiniscript","","",24,null],[13,"BIP32","","",24,null],[13,"Base58","","",24,null],[13,"PK","","",24,null],[13,"Miniscript","","",24,null],[13,"Hex","","",24,null],[0,"policy","bdk::descriptor","Descriptor policy",null,null],[3,"PKOrF","bdk::descriptor::policy","Raw public key or extended key fingerprint",null,null],[3,"Policy","","Descriptor spending policy",null,null],[12,"id","","Identifier for this policy node",25,null],[12,"item","","Type of this policy node",25,null],[12,"satisfaction","","How a much given PSBT already satisfies this polcy node…",25,null],[12,"contribution","","How the wallet\'s descriptor can satisfy this policy node",25,null],[3,"Condition","","An extra condition that must be satisfied but that is out…",null,null],[12,"csv","","",26,null],[12,"timelock","","",26,null],[4,"SatisfiableItem","","An item that need to be satisfied",null,null],[13,"Signature","","",27,null],[13,"SignatureKey","","",27,null],[13,"SHA256Preimage","","",27,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","",28,null],[13,"HASH256Preimage","bdk::descriptor::policy","",27,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","",29,null],[13,"RIPEMD160Preimage","bdk::descriptor::policy","",27,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","",30,null],[13,"HASH160Preimage","bdk::descriptor::policy","",27,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","",31,null],[13,"AbsoluteTimelock","bdk::descriptor::policy","",27,null],[12,"value","bdk::descriptor::policy::SatisfiableItem","",32,null],[13,"RelativeTimelock","bdk::descriptor::policy","",27,null],[12,"value","bdk::descriptor::policy::SatisfiableItem","",33,null],[13,"Thresh","bdk::descriptor::policy","",27,null],[12,"items","bdk::descriptor::policy::SatisfiableItem","",34,null],[12,"threshold","","",34,null],[13,"Multisig","bdk::descriptor::policy","",27,null],[12,"keys","bdk::descriptor::policy::SatisfiableItem","",35,null],[12,"threshold","","",35,null],[4,"Satisfaction","bdk::descriptor::policy","Represent if and how much a policy item is satisfied by…",null,null],[13,"Partial","","Only a partial satisfaction of some kind of threshold policy",36,null],[12,"n","bdk::descriptor::policy::Satisfaction","Total number of items",37,null],[12,"m","","Threshold",37,null],[12,"items","","The items that can be satisfied by the descriptor",37,null],[12,"conditions","","Extra conditions that also need to be satisfied",37,null],[13,"PartialComplete","bdk::descriptor::policy","Can reach the threshold of some kind of threshold policy",36,null],[12,"n","bdk::descriptor::policy::Satisfaction","Total number of items",38,null],[12,"m","","Threshold",38,null],[12,"items","","The items that can be satisfied by the descriptor",38,null],[12,"conditions","","Extra conditions that also need to be satisfied",38,null],[13,"Complete","bdk::descriptor::policy","Can satisfy the policy item",36,null],[12,"condition","bdk::descriptor::policy::Satisfaction","Extra conditions that also need to be satisfied",39,null],[13,"None","bdk::descriptor::policy","Cannot satisfy or contribute to the policy item",36,null],[4,"PolicyError","","Errors that can happen while extracting and manipulating…",null,null],[13,"NotEnoughItemsSelected","","",40,null],[13,"TooManyItemsSelected","","",40,null],[13,"IndexOutOfRange","","",40,null],[13,"AddOnLeaf","","",40,null],[13,"AddOnPartialComplete","","",40,null],[13,"MixedTimelockUnits","","",40,null],[13,"IncompatibleConditions","","",40,null],[6,"ConditionMap","","",null,null],[6,"FoldedConditionMap","","",null,null],[11,"is_leaf","","",27,[[]]],[11,"id","","",27,[[],["string",3]]],[11,"is_leaf","","",36,[[]]],[11,"is_null","","",26,[[]]],[11,"requires_path","","Return whether or not a specific path in the policy tree…",25,[[]]],[11,"get_condition","","Return the conditions that are set by the spending policy…",25,[[["btreemap",3]],[["policyerror",4],["result",4],["condition",3]]]],[6,"ExtendedDescriptor","bdk::descriptor","Alias for a [`Descriptor`] that can contain extended keys…",null,null],[6,"HDKeyPaths","","Alias for the type of maps that represent derivation paths…",null,null],[8,"ExtractPolicy","","Trait implemented on [`Descriptor`]s to add a method to…",null,null],[10,"extract_policy","","",41,[[["signerscontainer",3],["arc",3]],[["error",4],["result",4],["option",4]]]],[11,"as_byte","bdk","",4,[[]]],[11,"is_internal","","",4,[[]]],[11,"from_btc_per_kvb","","Create a new instance of [`FeeRate`] given a float fee…",42,[[]]],[11,"from_sat_per_vb","","Create a new instance of [`FeeRate`] given a float fee…",42,[[]]],[11,"default_min_relay_fee","","Create a new [`FeeRate`] with the default min relay fee…",42,[[]]],[11,"as_sat_vb","","Return the value as satoshi/vbyte",42,[[]]],[0,"wallet","","Wallet",null,null],[3,"Wallet","bdk::wallet","A Bitcoin wallet",null,null],[0,"address_validator","","Address validation callbacks",null,null],[4,"AddressValidatorError","bdk::wallet::address_validator","Errors that can be returned to fail the validation of an…",null,null],[13,"UserRejected","","",43,null],[13,"ConnectionError","","",43,null],[13,"TimeoutError","","",43,null],[13,"InvalidScript","","",43,null],[13,"Message","","",43,null],[8,"AddressValidator","","Trait to build address validators",null,null],[10,"validate","","Validate or inspect an address",44,[[["scripttype",4],["script",3],["hdkeypaths",6]],[["result",4],["addressvalidatorerror",4]]]],[0,"coin_selection","bdk::wallet","Coin selection",null,null],[3,"CoinSelectionResult","bdk::wallet::coin_selection","Result of a successful coin selection",null,null],[12,"txin","","List of inputs to use, with the respective previous…",45,null],[12,"selected_amount","","Sum of the selected inputs\' value",45,null],[12,"fee_amount","","Total fee amount in satoshi",45,null],[3,"DumbCoinSelection","","Simple and dumb coin selection",null,null],[6,"DefaultCoinSelectionAlgorithm","","Default coin selection algorithm used by `TxBuilder` if…",null,null],[8,"CoinSelectionAlgorithm","","Trait for generalized coin selection algorithms",null,null],[10,"coin_select","","Perform the coin selection",46,[[["feerate",3],["vec",3],["utxo",3]],[["coinselectionresult",3],["error",4],["result",4]]]],[0,"export","bdk::wallet","Wallet export",null,null],[3,"WalletExport","bdk::wallet::export","Structure that contains the export of a wallet",null,null],[12,"blockheight","","Earliest block to rescan when looking for the wallet\'s…",47,null],[12,"label","","Arbitrary label for the wallet",47,null],[11,"export_wallet","","Export a wallet",47,[[["wallet",3]],["result",4]]],[11,"descriptor","","Return the external descriptor",47,[[],["string",3]]],[11,"change_descriptor","","Return the internal descriptor, if present",47,[[],[["string",3],["option",4]]]],[0,"signer","bdk::wallet","Generalized signers",null,null],[3,"SignerOrdering","bdk::wallet::signer","Defines the order in which signers are called",null,null],[12,"0","","",48,null],[3,"SignersContainer","","Container for multiple signers",null,null],[4,"SignerId","","Identifier of a signer in the `SignersContainers`. Used as…",null,null],[13,"PkHash","","",49,null],[13,"Fingerprint","","",49,null],[4,"SignerError","","Signing error",null,null],[13,"MissingKey","","The private key is missing for the required public key",50,null],[13,"UserCanceled","","The user canceled the operation",50,null],[13,"MissingSighash","","The sighash is missing in the PSBT input",50,null],[13,"InputIndexOutOfRange","","Input index is out of range",50,null],[13,"MissingNonWitnessUtxo","","The `non_witness_utxo` field of the transaction is…",50,null],[13,"InvalidNonWitnessUtxo","","The `non_witness_utxo` specified is invalid",50,null],[13,"MissingWitnessUtxo","","The `witness_utxo` field of the transaction is required to…",50,null],[13,"MissingWitnessScript","","The `witness_script` field of the transaction is requied…",50,null],[13,"MissingHDKeypath","","The fingerprint and derivation path are missing from the…",50,null],[8,"Signer","","Trait for signers",null,null],[10,"sign","","Sign a PSBT",51,[[["partiallysignedtransaction",3],["option",4]],[["result",4],["signererror",4]]]],[10,"sign_whole_tx","","Return whether or not the signer signs the whole…",51,[[]]],[11,"descriptor_secret_key","","Return the secret key for the signer",51,[[],[["descriptorsecretkey",4],["option",4]]]],[11,"as_key_map","","",52,[[],["keymap",6]]],[11,"new","","Default constructor",52,[[]]],[11,"add_external","","Adds an external signer to the container for the specified…",52,[[["signerid",4],["signerordering",3],["arc",3],["box",3]],[["arc",3],["option",4]]]],[11,"remove","","Removes a signer from the container and returns it",52,[[["signerid",4],["signerordering",3]],[["arc",3],["option",4]]]],[11,"ids","","Returns the list of identifiers of all the signers in the…",52,[[],[["vec",3],["signerid",4]]]],[11,"signers","","Returns the list of signers in the container, sorted by…",52,[[],[["vec",3],["arc",3]]]],[11,"find","","Finds the signer with lowest ordering for a given id in…",52,[[["signerid",4]],[["option",4],["arc",3]]]],[0,"time","bdk::wallet","Cross-platform time",null,null],[5,"get_timestamp","bdk::wallet::time","Return the current timestamp in seconds",null,[[]]],[0,"tx_builder","bdk::wallet","Transaction builder",null,null],[3,"TxBuilder","bdk::wallet::tx_builder","A transaction builder",null,null],[4,"TxOrdering","","Ordering of the transaction\'s inputs and outputs",null,null],[13,"Shuffle","","Randomized (default)",53,null],[13,"Untouched","","Unchanged",53,null],[13,"BIP69Lexicographic","","BIP69 / Lexicographic",53,null],[4,"ChangeSpendPolicy","","Policy regarding the use of change outputs when creating a…",null,null],[13,"ChangeAllowed","","Use both change and non-change outputs (default)",54,null],[13,"OnlyChange","","Only use change outputs (see…",54,null],[13,"ChangeForbidden","","Only use non-change outputs (see…",54,null],[11,"new","","Create an empty builder",55,[[]]],[11,"with_recipients","","Create a builder starting from a list of recipients",55,[[["vec",3]]]],[11,"set_recipients","","Replace the recipients already added with a new list",55,[[["vec",3]]]],[11,"add_recipient","","Add a recipient to the internal list",55,[[["script",3]]]],[11,"send_all","","Send all the selected utxos to a single output",55,[[]]],[11,"fee_rate","","Set a custom fee rate",55,[[["feerate",3]]]],[11,"policy_path","","Set the policy path to use while creating the transaction",55,[[["vec",3],["string",3],["btreemap",3]]]],[11,"utxos","","Replace the internal list of utxos that must be spent with…",55,[[["vec",3],["outpoint",3]]]],[11,"add_utxo","","Add a utxo to the internal list of utxos that must be spent",55,[[["outpoint",3]]]],[11,"unspendable","","Replace the internal list of unspendable utxos with a new…",55,[[["vec",3],["outpoint",3]]]],[11,"add_unspendable","","Add a utxo to the internal list of unspendable utxos",55,[[["outpoint",3]]]],[11,"sighash","","Sign with a specific sig hash",55,[[["sighashtype",4]]]],[11,"ordering","","Choose the ordering for inputs and outputs of the…",55,[[["txordering",4]]]],[11,"nlocktime","","Use a specific nLockTime while creating the transaction",55,[[]]],[11,"enable_rbf","","Enable signaling RBF",55,[[]]],[11,"enable_rbf_with_sequence","","Enable signaling RBF with a specific nSequence value",55,[[]]],[11,"version","","Build a transaction with a specific version",55,[[]]],[11,"do_not_spend_change","","Do not spend change outputs",55,[[]]],[11,"only_spend_change","","Only spend change outputs",55,[[]]],[11,"change_policy","","Set a specific [`ChangeSpendPolicy`]. See…",55,[[["changespendpolicy",4]]]],[11,"force_non_witness_utxo","","Fill-in the `psbt::Input::non_witness_utxo` field even if…",55,[[]]],[11,"coin_selection","","Choose the coin selection algorithm",55,[[["coinselectionalgorithm",8]],[["txbuilder",3],["coinselectionalgorithm",8]]]],[11,"sort_tx","","",53,[[["transaction",3]]]],[6,"OfflineWallet","bdk::wallet","Type alias for a [`Wallet`] that uses [`OfflineBlockchain`]",null,null],[8,"IsDust","","Trait to check if a value is below the dust limit",null,null],[10,"is_dust","","Check whether or not a value is below dust limit",56,[[]]],[11,"new_offline","","Create a new \\\"offline\\\" wallet",57,[[["option",4],["network",4]],[["error",4],["result",4]]]],[11,"get_new_address","","Return a newly generated address using the external…",57,[[],[["address",3],["result",4],["error",4]]]],[11,"is_mine","","Return whether or not a `script` is part of this wallet…",57,[[["script",3]],[["error",4],["result",4]]]],[11,"list_unspent","","Return the list of unspent outputs of this wallet",57,[[],[["result",4],["vec",3],["error",4]]]],[11,"list_transactions","","Return the list of transactions made and received by the…",57,[[],[["vec",3],["result",4],["error",4]]]],[11,"get_balance","","Return the balance, meaning the sum of this wallet\'s…",57,[[],[["result",4],["error",4]]]],[11,"add_signer","","Add an external signer",57,[[["scripttype",4],["signerid",4],["signerordering",3],["descriptorpublickey",4],["arc",3],["box",3]]]],[11,"add_address_validator","","Add an address validator",57,[[["arc",3],["box",3]]]],[11,"create_tx","","Create a new transaction following the options specified…",57,[[["txbuilder",3],["coinselectionalgorithm",8]],[["error",4],["result",4]]]],[11,"bump_fee","","Bump the fee of a transaction following the options…",57,[[["txid",3],["txbuilder",3],["coinselectionalgorithm",8]],[["error",4],["result",4]]]],[11,"sign","","Sign a transaction with all the wallet\'s signers, in the…",57,[[["psbt",3],["option",4]],[["result",4],["error",4]]]],[11,"policies","","Return the spending policies for the wallet\'s descriptor",57,[[["scripttype",4]],[["result",4],["option",4],["error",4]]]],[11,"public_descriptor","","Return the \\\"public\\\" version of the wallet\'s descriptor,…",57,[[["scripttype",4]],[["option",4],["result",4],["error",4]]]],[11,"finalize_psbt","","Try to finalize a PSBT",57,[[["psbt",3],["option",4]],[["result",4],["error",4]]]],[11,"new","","Create a new \\\"online\\\" wallet",57,[[["option",4],["network",4]],[["error",4],["result",4]]]],[11,"sync","","Sync the internal database with the blockchain",57,[[["progress",8],["option",4]],[["error",4],["result",4]]]],[11,"client","","Return a reference to the internal blockchain client",57,[[],["option",4]]],[11,"broadcast","","Broadcast a transaction to the network",57,[[["transaction",3]],[["result",4],["txid",3],["error",4]]]],[11,"from","bdk","",42,[[]]],[11,"into","","",42,[[]]],[11,"to_owned","","",42,[[]]],[11,"clone_into","","",42,[[]]],[11,"try_from","","",42,[[],["result",4]]],[11,"try_into","","",42,[[],["result",4]]],[11,"borrow","","",42,[[]]],[11,"borrow_mut","","",42,[[]]],[11,"type_id","","",42,[[],["typeid",3]]],[11,"vzip","","",42,[[]]],[11,"from","","",0,[[]]],[11,"into","","",0,[[]]],[11,"to_owned","","",0,[[]]],[11,"clone_into","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"equivalent","","",0,[[]]],[11,"vzip","","",0,[[]]],[11,"from","","",1,[[]]],[11,"into","","",1,[[]]],[11,"to_owned","","",1,[[]]],[11,"clone_into","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"equivalent","","",1,[[]]],[11,"vzip","","",1,[[]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"to_string","","",2,[[],["string",3]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"vzip","","",2,[[]]],[11,"from","","",4,[[]]],[11,"into","","",4,[[]]],[11,"to_owned","","",4,[[]]],[11,"clone_into","","",4,[[]]],[11,"try_from","","",4,[[],["result",4]]],[11,"try_into","","",4,[[],["result",4]]],[11,"borrow","","",4,[[]]],[11,"borrow_mut","","",4,[[]]],[11,"type_id","","",4,[[],["typeid",3]]],[11,"write_base32","","",4,[[],["result",4]]],[11,"base32_len","","",4,[[]]],[11,"check_base32","","",4,[[],[["result",4],["vec",3]]]],[11,"equivalent","","",4,[[]]],[11,"vzip","","",4,[[]]],[11,"from","bdk::blockchain","",58,[[]]],[11,"into","","",58,[[]]],[11,"try_from","","",58,[[],["result",4]]],[11,"try_into","","",58,[[],["result",4]]],[11,"borrow","","",58,[[]]],[11,"borrow_mut","","",58,[[]]],[11,"type_id","","",58,[[],["typeid",3]]],[11,"vzip","","",58,[[]]],[11,"from","","",59,[[]]],[11,"into","","",59,[[]]],[11,"to_owned","","",59,[[]]],[11,"clone_into","","",59,[[]]],[11,"try_from","","",59,[[],["result",4]]],[11,"try_into","","",59,[[],["result",4]]],[11,"borrow","","",59,[[]]],[11,"borrow_mut","","",59,[[]]],[11,"type_id","","",59,[[],["typeid",3]]],[11,"vzip","","",59,[[]]],[11,"from","","",60,[[]]],[11,"into","","",60,[[]]],[11,"to_owned","","",60,[[]]],[11,"clone_into","","",60,[[]]],[11,"try_from","","",60,[[],["result",4]]],[11,"try_into","","",60,[[],["result",4]]],[11,"borrow","","",60,[[]]],[11,"borrow_mut","","",60,[[]]],[11,"type_id","","",60,[[],["typeid",3]]],[11,"vzip","","",60,[[]]],[11,"from","","",5,[[]]],[11,"into","","",5,[[]]],[11,"to_owned","","",5,[[]]],[11,"clone_into","","",5,[[]]],[11,"try_from","","",5,[[],["result",4]]],[11,"try_into","","",5,[[],["result",4]]],[11,"borrow","","",5,[[]]],[11,"borrow_mut","","",5,[[]]],[11,"type_id","","",5,[[],["typeid",3]]],[11,"equivalent","","",5,[[]]],[11,"vzip","","",5,[[]]],[11,"from","bdk::blockchain::electrum","",61,[[]]],[11,"into","","",61,[[]]],[11,"try_from","","",61,[[],["result",4]]],[11,"try_into","","",61,[[],["result",4]]],[11,"borrow","","",61,[[]]],[11,"borrow_mut","","",61,[[]]],[11,"type_id","","",61,[[],["typeid",3]]],[11,"vzip","","",61,[[]]],[11,"from","bdk::blockchain::esplora","",7,[[]]],[11,"into","","",7,[[]]],[11,"try_from","","",7,[[],["result",4]]],[11,"try_into","","",7,[[],["result",4]]],[11,"borrow","","",7,[[]]],[11,"borrow_mut","","",7,[[]]],[11,"type_id","","",7,[[],["typeid",3]]],[11,"vzip","","",7,[[]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"to_string","","",6,[[],["string",3]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"vzip","","",6,[[]]],[11,"from","bdk::blockchain::compact_filters","",9,[[]]],[11,"into","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"vzip","","",9,[[]]],[11,"from","","",10,[[]]],[11,"into","","",10,[[]]],[11,"try_from","","",10,[[],["result",4]]],[11,"try_into","","",10,[[],["result",4]]],[11,"borrow","","",10,[[]]],[11,"borrow_mut","","",10,[[]]],[11,"type_id","","",10,[[],["typeid",3]]],[11,"vzip","","",10,[[]]],[11,"from","","",11,[[]]],[11,"into","","",11,[[]]],[11,"try_from","","",11,[[],["result",4]]],[11,"try_into","","",11,[[],["result",4]]],[11,"borrow","","",11,[[]]],[11,"borrow_mut","","",11,[[]]],[11,"type_id","","",11,[[],["typeid",3]]],[11,"vzip","","",11,[[]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"to_string","","",8,[[],["string",3]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"vzip","","",8,[[]]],[11,"from","bdk::database::memory","",14,[[]]],[11,"into","","",14,[[]]],[11,"try_from","","",14,[[],["result",4]]],[11,"try_into","","",14,[[],["result",4]]],[11,"borrow","","",14,[[]]],[11,"borrow_mut","","",14,[[]]],[11,"type_id","","",14,[[],["typeid",3]]],[11,"vzip","","",14,[[]]],[11,"from","bdk::descriptor","",18,[[]]],[11,"into","","",18,[[]]],[11,"to_owned","","",18,[[]]],[11,"clone_into","","",18,[[]]],[11,"to_string","","",18,[[],["string",3]]],[11,"try_from","","",18,[[],["result",4]]],[11,"try_into","","",18,[[],["result",4]]],[11,"borrow","","",18,[[]]],[11,"borrow_mut","","",18,[[]]],[11,"type_id","","",18,[[],["typeid",3]]],[11,"equivalent","","",18,[[]]],[11,"vzip","","",18,[[]]],[11,"from","","",62,[[]]],[11,"into","","",62,[[]]],[11,"to_owned","","",62,[[]]],[11,"clone_into","","",62,[[]]],[11,"try_from","","",62,[[],["result",4]]],[11,"try_into","","",62,[[],["result",4]]],[11,"borrow","","",62,[[]]],[11,"borrow_mut","","",62,[[]]],[11,"type_id","","",62,[[],["typeid",3]]],[11,"equivalent","","",62,[[]]],[11,"vzip","","",62,[[]]],[11,"from","","",19,[[]]],[11,"into","","",19,[[]]],[11,"to_owned","","",19,[[]]],[11,"clone_into","","",19,[[]]],[11,"to_string","","",19,[[],["string",3]]],[11,"try_from","","",19,[[],["result",4]]],[11,"try_into","","",19,[[],["result",4]]],[11,"borrow","","",19,[[]]],[11,"borrow_mut","","",19,[[]]],[11,"type_id","","",19,[[],["typeid",3]]],[11,"equivalent","","",19,[[]]],[11,"vzip","","",19,[[]]],[11,"from","","",63,[[]]],[11,"into","","",63,[[]]],[11,"to_owned","","",63,[[]]],[11,"clone_into","","",63,[[]]],[11,"try_from","","",63,[[],["result",4]]],[11,"try_into","","",63,[[],["result",4]]],[11,"borrow","","",63,[[]]],[11,"borrow_mut","","",63,[[]]],[11,"type_id","","",63,[[],["typeid",3]]],[11,"equivalent","","",63,[[]]],[11,"vzip","","",63,[[]]],[11,"from","","",22,[[]]],[11,"into","","",22,[[]]],[11,"to_owned","","",22,[[]]],[11,"clone_into","","",22,[[]]],[11,"to_string","","",22,[[],["string",3]]],[11,"try_from","","",22,[[],["result",4]]],[11,"try_into","","",22,[[],["result",4]]],[11,"borrow","","",22,[[]]],[11,"borrow_mut","","",22,[[]]],[11,"type_id","","",22,[[],["typeid",3]]],[11,"equivalent","","",22,[[]]],[11,"vzip","","",22,[[]]],[11,"from","bdk::descriptor::error","",24,[[]]],[11,"into","","",24,[[]]],[11,"to_string","","",24,[[],["string",3]]],[11,"try_from","","",24,[[],["result",4]]],[11,"try_into","","",24,[[],["result",4]]],[11,"borrow","","",24,[[]]],[11,"borrow_mut","","",24,[[]]],[11,"type_id","","",24,[[],["typeid",3]]],[11,"vzip","","",24,[[]]],[11,"from","bdk::descriptor::policy","",64,[[]]],[11,"into","","",64,[[]]],[11,"to_owned","","",64,[[]]],[11,"clone_into","","",64,[[]]],[11,"try_from","","",64,[[],["result",4]]],[11,"try_into","","",64,[[],["result",4]]],[11,"borrow","","",64,[[]]],[11,"borrow_mut","","",64,[[]]],[11,"type_id","","",64,[[],["typeid",3]]],[11,"vzip","","",64,[[]]],[11,"from","","",25,[[]]],[11,"into","","",25,[[]]],[11,"to_owned","","",25,[[]]],[11,"clone_into","","",25,[[]]],[11,"try_from","","",25,[[],["result",4]]],[11,"try_into","","",25,[[],["result",4]]],[11,"borrow","","",25,[[]]],[11,"borrow_mut","","",25,[[]]],[11,"type_id","","",25,[[],["typeid",3]]],[11,"vzip","","",25,[[]]],[11,"from","","",26,[[]]],[11,"into","","",26,[[]]],[11,"to_owned","","",26,[[]]],[11,"clone_into","","",26,[[]]],[11,"try_from","","",26,[[],["result",4]]],[11,"try_into","","",26,[[],["result",4]]],[11,"borrow","","",26,[[]]],[11,"borrow_mut","","",26,[[]]],[11,"type_id","","",26,[[],["typeid",3]]],[11,"equivalent","","",26,[[]]],[11,"vzip","","",26,[[]]],[11,"from","","",27,[[]]],[11,"into","","",27,[[]]],[11,"to_owned","","",27,[[]]],[11,"clone_into","","",27,[[]]],[11,"try_from","","",27,[[],["result",4]]],[11,"try_into","","",27,[[],["result",4]]],[11,"borrow","","",27,[[]]],[11,"borrow_mut","","",27,[[]]],[11,"type_id","","",27,[[],["typeid",3]]],[11,"vzip","","",27,[[]]],[11,"from","","",36,[[]]],[11,"into","","",36,[[]]],[11,"to_owned","","",36,[[]]],[11,"clone_into","","",36,[[]]],[11,"try_from","","",36,[[],["result",4]]],[11,"try_into","","",36,[[],["result",4]]],[11,"borrow","","",36,[[]]],[11,"borrow_mut","","",36,[[]]],[11,"type_id","","",36,[[],["typeid",3]]],[11,"vzip","","",36,[[]]],[11,"from","","",40,[[]]],[11,"into","","",40,[[]]],[11,"to_string","","",40,[[],["string",3]]],[11,"try_from","","",40,[[],["result",4]]],[11,"try_into","","",40,[[],["result",4]]],[11,"borrow","","",40,[[]]],[11,"borrow_mut","","",40,[[]]],[11,"type_id","","",40,[[],["typeid",3]]],[11,"vzip","","",40,[[]]],[11,"from","bdk::wallet","",57,[[]]],[11,"into","","",57,[[]]],[11,"try_from","","",57,[[],["result",4]]],[11,"try_into","","",57,[[],["result",4]]],[11,"borrow","","",57,[[]]],[11,"borrow_mut","","",57,[[]]],[11,"type_id","","",57,[[],["typeid",3]]],[11,"vzip","","",57,[[]]],[11,"from","bdk::wallet::address_validator","",43,[[]]],[11,"into","","",43,[[]]],[11,"to_owned","","",43,[[]]],[11,"clone_into","","",43,[[]]],[11,"to_string","","",43,[[],["string",3]]],[11,"try_from","","",43,[[],["result",4]]],[11,"try_into","","",43,[[],["result",4]]],[11,"borrow","","",43,[[]]],[11,"borrow_mut","","",43,[[]]],[11,"type_id","","",43,[[],["typeid",3]]],[11,"equivalent","","",43,[[]]],[11,"vzip","","",43,[[]]],[11,"from","bdk::wallet::coin_selection","",45,[[]]],[11,"into","","",45,[[]]],[11,"try_from","","",45,[[],["result",4]]],[11,"try_into","","",45,[[],["result",4]]],[11,"borrow","","",45,[[]]],[11,"borrow_mut","","",45,[[]]],[11,"type_id","","",45,[[],["typeid",3]]],[11,"vzip","","",45,[[]]],[11,"from","","",65,[[]]],[11,"into","","",65,[[]]],[11,"try_from","","",65,[[],["result",4]]],[11,"try_into","","",65,[[],["result",4]]],[11,"borrow","","",65,[[]]],[11,"borrow_mut","","",65,[[]]],[11,"type_id","","",65,[[],["typeid",3]]],[11,"vzip","","",65,[[]]],[11,"from","bdk::wallet::export","",47,[[]]],[11,"into","","",47,[[]]],[11,"to_string","","",47,[[],["string",3]]],[11,"try_from","","",47,[[],["result",4]]],[11,"try_into","","",47,[[],["result",4]]],[11,"borrow","","",47,[[]]],[11,"borrow_mut","","",47,[[]]],[11,"type_id","","",47,[[],["typeid",3]]],[11,"vzip","","",47,[[]]],[11,"from","bdk::wallet::signer","",48,[[]]],[11,"into","","",48,[[]]],[11,"to_owned","","",48,[[]]],[11,"clone_into","","",48,[[]]],[11,"try_from","","",48,[[],["result",4]]],[11,"try_into","","",48,[[],["result",4]]],[11,"borrow","","",48,[[]]],[11,"borrow_mut","","",48,[[]]],[11,"type_id","","",48,[[],["typeid",3]]],[11,"equivalent","","",48,[[]]],[11,"vzip","","",48,[[]]],[11,"from","","",52,[[]]],[11,"into","","",52,[[]]],[11,"to_owned","","",52,[[]]],[11,"clone_into","","",52,[[]]],[11,"try_from","","",52,[[],["result",4]]],[11,"try_into","","",52,[[],["result",4]]],[11,"borrow","","",52,[[]]],[11,"borrow_mut","","",52,[[]]],[11,"type_id","","",52,[[],["typeid",3]]],[11,"vzip","","",52,[[]]],[11,"from","","",49,[[]]],[11,"into","","",49,[[]]],[11,"to_owned","","",49,[[]]],[11,"clone_into","","",49,[[]]],[11,"try_from","","",49,[[],["result",4]]],[11,"try_into","","",49,[[],["result",4]]],[11,"borrow","","",49,[[]]],[11,"borrow_mut","","",49,[[]]],[11,"type_id","","",49,[[],["typeid",3]]],[11,"equivalent","","",49,[[]]],[11,"vzip","","",49,[[]]],[11,"from","","",50,[[]]],[11,"into","","",50,[[]]],[11,"to_owned","","",50,[[]]],[11,"clone_into","","",50,[[]]],[11,"to_string","","",50,[[],["string",3]]],[11,"try_from","","",50,[[],["result",4]]],[11,"try_into","","",50,[[],["result",4]]],[11,"borrow","","",50,[[]]],[11,"borrow_mut","","",50,[[]]],[11,"type_id","","",50,[[],["typeid",3]]],[11,"equivalent","","",50,[[]]],[11,"vzip","","",50,[[]]],[11,"from","bdk::wallet::tx_builder","",55,[[]]],[11,"into","","",55,[[]]],[11,"try_from","","",55,[[],["result",4]]],[11,"try_into","","",55,[[],["result",4]]],[11,"borrow","","",55,[[]]],[11,"borrow_mut","","",55,[[]]],[11,"type_id","","",55,[[],["typeid",3]]],[11,"vzip","","",55,[[]]],[11,"from","","",53,[[]]],[11,"into","","",53,[[]]],[11,"to_owned","","",53,[[]]],[11,"clone_into","","",53,[[]]],[11,"try_from","","",53,[[],["result",4]]],[11,"try_into","","",53,[[],["result",4]]],[11,"borrow","","",53,[[]]],[11,"borrow_mut","","",53,[[]]],[11,"type_id","","",53,[[],["typeid",3]]],[11,"equivalent","","",53,[[]]],[11,"vzip","","",53,[[]]],[11,"from","","",54,[[]]],[11,"into","","",54,[[]]],[11,"to_owned","","",54,[[]]],[11,"clone_into","","",54,[[]]],[11,"try_from","","",54,[[],["result",4]]],[11,"try_into","","",54,[[],["result",4]]],[11,"borrow","","",54,[[]]],[11,"borrow_mut","","",54,[[]]],[11,"type_id","","",54,[[],["typeid",3]]],[11,"equivalent","","",54,[[]]],[11,"vzip","","",54,[[]]],[11,"eq","bdk::descriptor","",19,[[["miniscript",3]]]],[11,"eq","","",18,[[["descriptor",4]]]],[11,"ne","","",18,[[["descriptor",4]]]],[11,"eq","","",63,[[["segwitv0",4]]]],[11,"eq","","",22,[[["terminal",4]]]],[11,"ne","","",22,[[["terminal",4]]]],[11,"eq","","",62,[[["legacy",4]]]],[11,"check_frag_non_malleable","","",62,[[["terminal",4]],[["scriptcontexterror",4],["result",4]]]],[11,"check_frag_validity","","",62,[[["terminal",4]],[["scriptcontexterror",4],["result",4]]]],[11,"check_frag_non_malleable","","",63,[[["terminal",4]],[["scriptcontexterror",4],["result",4]]]],[11,"check_frag_validity","","",63,[[["terminal",4]],[["scriptcontexterror",4],["result",4]]]],[11,"cmp","","",22,[[["terminal",4]],["ordering",4]]],[11,"cmp","","",63,[[["segwitv0",4]],["ordering",4]]],[11,"cmp","","",62,[[["legacy",4]],["ordering",4]]],[11,"cmp","","",18,[[["descriptor",4]],["ordering",4]]],[11,"cmp","","",19,[[["miniscript",3]],["ordering",4]]],[11,"fmt","","",19,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",18,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",22,[[["formatter",3]],[["result",4],["error",3]]]],[11,"from_str","","",18,[[],[["error",4],["descriptor",4],["result",4]]]],[11,"from_str","","",19,[[],[["error",4],["miniscript",3],["result",4]]]],[11,"hash","","",19,[[]]],[11,"hash","","",22,[[]]],[11,"fmt","","",19,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",63,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",62,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",22,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",18,[[["formatter",3]],[["result",4],["error",3]]]],[11,"partial_cmp","","",19,[[["miniscript",3]],[["ordering",4],["option",4]]]],[11,"partial_cmp","","",63,[[["segwitv0",4]],[["ordering",4],["option",4]]]],[11,"partial_cmp","","",18,[[["descriptor",4]],[["ordering",4],["option",4]]]],[11,"lt","","",18,[[["descriptor",4]]]],[11,"le","","",18,[[["descriptor",4]]]],[11,"gt","","",18,[[["descriptor",4]]]],[11,"ge","","",18,[[["descriptor",4]]]],[11,"partial_cmp","","",22,[[["terminal",4]],[["ordering",4],["option",4]]]],[11,"lt","","",22,[[["terminal",4]]]],[11,"le","","",22,[[["terminal",4]]]],[11,"gt","","",22,[[["terminal",4]]]],[11,"ge","","",22,[[["terminal",4]]]],[11,"partial_cmp","","",62,[[["legacy",4]],[["ordering",4],["option",4]]]],[11,"from_tree","","Parse an expression tree into a Miniscript. As a general…",19,[[["tree",3]],[["error",4],["miniscript",3],["result",4]]]],[11,"from_tree","","",22,[[["tree",3]],[["error",4],["terminal",4],["result",4]]]],[11,"from_tree","","Parse an expression tree into a descriptor",18,[[["tree",3]],[["error",4],["descriptor",4],["result",4]]]],[11,"lift","","",18,[[],["policy",4]]],[11,"lift","","",19,[[],["policy",4]]],[11,"lift","","",22,[[],["policy",4]]],[11,"clone","","",18,[[],["descriptor",4]]],[11,"clone","","",19,[[],["miniscript",3]]],[11,"clone","","",62,[[],["legacy",4]]],[11,"clone","","",63,[[],["segwitv0",4]]],[11,"clone","","",22,[[],["terminal",4]]],[11,"update","bdk::blockchain","",59,[[["string",3],["option",4]],[["error",4],["result",4]]]],[11,"update","","",60,[[["string",3],["option",4]],[["error",4],["result",4]]]],[11,"set_script_pubkey","bdk::database::memory","",14,[[["scripttype",4],["script",3]],[["error",4],["result",4]]]],[11,"set_utxo","","",14,[[["utxo",3]],[["error",4],["result",4]]]],[11,"set_raw_tx","","",14,[[["transaction",3]],[["error",4],["result",4]]]],[11,"set_tx","","",14,[[["transactiondetails",3]],[["error",4],["result",4]]]],[11,"set_last_index","","",14,[[["scripttype",4]],[["error",4],["result",4]]]],[11,"del_script_pubkey_from_path","","",14,[[["scripttype",4]],[["error",4],["option",4],["result",4]]]],[11,"del_path_from_script_pubkey","","",14,[[["script",3]],[["option",4],["error",4],["result",4]]]],[11,"del_utxo","","",14,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"del_raw_tx","","",14,[[["txid",3]],[["option",4],["result",4],["error",4]]]],[11,"del_tx","","",14,[[["txid",3]],[["option",4],["error",4],["result",4]]]],[11,"del_last_index","","",14,[[["scripttype",4]],[["result",4],["option",4],["error",4]]]],[11,"check_descriptor_checksum","","",14,[[["scripttype",4],["asref",8]],[["error",4],["result",4]]]],[11,"iter_script_pubkeys","","",14,[[["option",4],["scripttype",4]],[["result",4],["vec",3],["error",4]]]],[11,"iter_utxos","","",14,[[],[["result",4],["vec",3],["error",4]]]],[11,"iter_raw_txs","","",14,[[],[["error",4],["vec",3],["result",4]]]],[11,"iter_txs","","",14,[[],[["vec",3],["result",4],["error",4]]]],[11,"get_script_pubkey_from_path","","",14,[[["scripttype",4]],[["error",4],["option",4],["result",4]]]],[11,"get_path_from_script_pubkey","","",14,[[["script",3]],[["option",4],["error",4],["result",4]]]],[11,"get_utxo","","",14,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"get_raw_tx","","",14,[[["txid",3]],[["option",4],["result",4],["error",4]]]],[11,"get_tx","","",14,[[["txid",3]],[["option",4],["error",4],["result",4]]]],[11,"get_last_index","","",14,[[["scripttype",4]],[["result",4],["option",4],["error",4]]]],[11,"increment_last_index","","",14,[[["scripttype",4]],[["result",4],["error",4]]]],[11,"begin_batch","","",14,[[]]],[11,"commit_batch","","",14,[[],[["error",4],["result",4]]]],[11,"extract_policy","bdk::descriptor","",19,[[["signerscontainer",3],["arc",3]],[["error",4],["result",4],["option",4]]]],[11,"extract_policy","","",18,[[["signerscontainer",3],["arc",3]],[["error",4],["result",4],["option",4]]]],[11,"coin_select","bdk::wallet::coin_selection","",65,[[["feerate",3],["vec",3],["utxo",3]],[["coinselectionresult",3],["error",4],["result",4]]]],[11,"get_capabilities","bdk::blockchain::electrum","",61,[[],[["capability",4],["hashset",3]]]],[11,"setup","","",61,[[["progress",8],["option",4]],[["error",4],["result",4]]]],[11,"get_tx","","",61,[[["txid",3]],[["option",4],["result",4],["error",4]]]],[11,"broadcast","","",61,[[["transaction",3]],[["error",4],["result",4]]]],[11,"get_height","","",61,[[],[["result",4],["error",4]]]],[11,"estimate_fee","","",61,[[],[["feerate",3],["error",4],["result",4]]]],[11,"get_capabilities","bdk::blockchain::esplora","",7,[[],[["capability",4],["hashset",3]]]],[11,"setup","","",7,[[["progress",8],["option",4]],[["error",4],["result",4]]]],[11,"get_tx","","",7,[[["txid",3]],[["option",4],["result",4],["error",4]]]],[11,"broadcast","","",7,[[["transaction",3]],[["error",4],["result",4]]]],[11,"get_height","","",7,[[],[["result",4],["error",4]]]],[11,"estimate_fee","","",7,[[],[["feerate",3],["error",4],["result",4]]]],[11,"get_capabilities","bdk::blockchain::compact_filters","",11,[[],[["capability",4],["hashset",3]]]],[11,"setup","","",11,[[["progress",8],["option",4]],[["error",4],["result",4]]]],[11,"get_tx","","",11,[[["txid",3]],[["option",4],["result",4],["error",4]]]],[11,"broadcast","","",11,[[["transaction",3]],[["error",4],["result",4]]]],[11,"get_height","","",11,[[],[["result",4],["error",4]]]],[11,"estimate_fee","","",11,[[],[["feerate",3],["error",4],["result",4]]]],[11,"as_ref","bdk","",4,[[]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["addressvalidatorerror",4]]]],[11,"from","","",2,[[["policyerror",4]]]],[11,"from","","",2,[[["signererror",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["error",3]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["esploraerror",4]]]],[11,"from","","",2,[[["error",4]]]],[11,"from","","",2,[[["compactfilterserror",4]]]],[11,"from","bdk::blockchain::electrum","",61,[[["client",4]]]],[11,"from","bdk::blockchain::esplora","",6,[[["error",3]]]],[11,"from","","",6,[[["parseinterror",3]]]],[11,"from","","",6,[[["error",4]]]],[11,"from","bdk::blockchain::compact_filters","",8,[[["error",3]]]],[11,"from","","",8,[[["error",3]]]],[11,"from","","",8,[[["error",4]]]],[11,"from","","",8,[[["systemtimeerror",3]]]],[11,"from","","",8,[[["error",4]]]],[11,"from","bdk::descriptor::error","",24,[[["error",4]]]],[11,"from","","",24,[[["error",4]]]],[11,"from","","",24,[[["error",4]]]],[11,"from","","",24,[[["error",4]]]],[11,"from","","",24,[[["error",4]]]],[11,"from","","",24,[[["policyerror",4]]]],[11,"from","bdk::descriptor::policy","",36,[[]]],[11,"from","","",25,[[["satisfiableitem",4]]]],[11,"from","bdk::wallet::signer","",49,[[["hash",3]],[["signerid",4],["descriptorpublickey",4]]]],[11,"from","","",49,[[["fingerprint",3]],[["signerid",4],["descriptorpublickey",4]]]],[11,"from","","",52,[[["keymap",6]],[["signerscontainer",3],["descriptorpublickey",4]]]],[11,"clone","bdk::blockchain","",5,[[],["capability",4]]],[11,"clone","","",59,[[],["noopprogress",3]]],[11,"clone","","",60,[[],["logprogress",3]]],[11,"clone","bdk::descriptor::policy","",64,[[],["pkorf",3]]],[11,"clone","","",27,[[],["satisfiableitem",4]]],[11,"clone","","",36,[[],["satisfaction",4]]],[11,"clone","","",25,[[],["policy",3]]],[11,"clone","","",26,[[],["condition",3]]],[11,"clone","bdk","",4,[[],["scripttype",4]]],[11,"clone","","",42,[[],["feerate",3]]],[11,"clone","","",0,[[],["utxo",3]]],[11,"clone","","",1,[[],["transactiondetails",3]]],[11,"clone","bdk::wallet::address_validator","",43,[[],["addressvalidatorerror",4]]],[11,"clone","bdk::wallet::signer","",49,[[],["signerid",4]]],[11,"clone","","",50,[[],["signererror",4]]],[11,"clone","","",48,[[],["signerordering",3]]],[11,"clone","","",52,[[],["signerscontainer",3]]],[11,"clone","bdk::wallet::tx_builder","",53,[[],["txordering",4]]],[11,"clone","","",54,[[],["changespendpolicy",4]]],[11,"default","bdk::blockchain::compact_filters","",9,[[],["mempool",3]]],[11,"default","bdk::database::memory","",14,[[],["memorydatabase",3]]],[11,"default","bdk::descriptor::policy","",64,[[],["pkorf",3]]],[11,"default","","",26,[[],["condition",3]]],[11,"default","bdk","",42,[[]]],[11,"default","","",1,[[],["transactiondetails",3]]],[11,"default","bdk::wallet::coin_selection","",65,[[],["dumbcoinselection",3]]],[11,"default","bdk::wallet::signer","",48,[[]]],[11,"default","","",52,[[],["signerscontainer",3]]],[11,"default","bdk::wallet::tx_builder","",55,[[],["txbuilder",3]]],[11,"default","","",53,[[]]],[11,"default","","",54,[[]]],[11,"cmp","bdk::descriptor::policy","",26,[[["condition",3]],["ordering",4]]],[11,"cmp","bdk::wallet::signer","",48,[[["signerordering",3]],["ordering",4]]],[11,"cmp","bdk::wallet::tx_builder","",53,[[["txordering",4]],["ordering",4]]],[11,"cmp","","",54,[[["changespendpolicy",4]],["ordering",4]]],[11,"eq","bdk::blockchain","",5,[[["capability",4]]]],[11,"eq","bdk::descriptor::policy","",26,[[["condition",3]]]],[11,"ne","","",26,[[["condition",3]]]],[11,"eq","bdk","",4,[[["scripttype",4]]]],[11,"eq","","",42,[[["feerate",3]]]],[11,"ne","","",42,[[["feerate",3]]]],[11,"eq","","",0,[[["utxo",3]]]],[11,"ne","","",0,[[["utxo",3]]]],[11,"eq","","",1,[[["transactiondetails",3]]]],[11,"ne","","",1,[[["transactiondetails",3]]]],[11,"eq","bdk::wallet::address_validator","",43,[[["addressvalidatorerror",4]]]],[11,"ne","","",43,[[["addressvalidatorerror",4]]]],[11,"eq","bdk::wallet::signer","",49,[[["signerid",4]]]],[11,"ne","","",49,[[["signerid",4]]]],[11,"eq","","",50,[[["signererror",4]]]],[11,"eq","","",48,[[["signerordering",3]]]],[11,"ne","","",48,[[["signerordering",3]]]],[11,"eq","bdk::wallet::tx_builder","",53,[[["txordering",4]]]],[11,"eq","","",54,[[["changespendpolicy",4]]]],[11,"partial_cmp","bdk::descriptor::policy","",26,[[["condition",3]],[["option",4],["ordering",4]]]],[11,"lt","","",26,[[["condition",3]]]],[11,"le","","",26,[[["condition",3]]]],[11,"gt","","",26,[[["condition",3]]]],[11,"ge","","",26,[[["condition",3]]]],[11,"partial_cmp","bdk","",42,[[["feerate",3]],[["option",4],["ordering",4]]]],[11,"lt","","",42,[[["feerate",3]]]],[11,"le","","",42,[[["feerate",3]]]],[11,"gt","","",42,[[["feerate",3]]]],[11,"ge","","",42,[[["feerate",3]]]],[11,"partial_cmp","bdk::wallet::signer","",48,[[["signerordering",3]],[["option",4],["ordering",4]]]],[11,"lt","","",48,[[["signerordering",3]]]],[11,"le","","",48,[[["signerordering",3]]]],[11,"gt","","",48,[[["signerordering",3]]]],[11,"ge","","",48,[[["signerordering",3]]]],[11,"partial_cmp","bdk::wallet::tx_builder","",53,[[["txordering",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",54,[[["changespendpolicy",4]],[["option",4],["ordering",4]]]],[11,"to_string","bdk::wallet::export","",47,[[],["string",3]]],[11,"fmt","bdk","",2,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::esplora","",7,[[["formatter",3]],["result",6]]],[11,"fmt","","",6,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::compact_filters","",9,[[["formatter",3]],["result",6]]],[11,"fmt","","",10,[[["formatter",3]],["result",6]]],[11,"fmt","","",11,[[["formatter",3]],["result",6]]],[11,"fmt","","",8,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain","",5,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::database::memory","",14,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::error","",24,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::policy","",64,[[["formatter",3]],["result",6]]],[11,"fmt","","",27,[[["formatter",3]],["result",6]]],[11,"fmt","","",36,[[["formatter",3]],["result",6]]],[11,"fmt","","",25,[[["formatter",3]],["result",6]]],[11,"fmt","","",26,[[["formatter",3]],["result",6]]],[11,"fmt","","",40,[[["formatter",3]],["result",6]]],[11,"fmt","bdk","",4,[[["formatter",3]],["result",6]]],[11,"fmt","","",42,[[["formatter",3]],["result",6]]],[11,"fmt","","",0,[[["formatter",3]],["result",6]]],[11,"fmt","","",1,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::address_validator","",43,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::coin_selection","",45,[[["formatter",3]],["result",6]]],[11,"fmt","","",65,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::export","",47,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::signer","",49,[[["formatter",3]],["result",6]]],[11,"fmt","","",50,[[["formatter",3]],["result",6]]],[11,"fmt","","",48,[[["formatter",3]],["result",6]]],[11,"fmt","","",52,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::tx_builder","",55,[[["formatter",3]],["result",6]]],[11,"fmt","","",53,[[["formatter",3]],["result",6]]],[11,"fmt","","",54,[[["formatter",3]],["result",6]]],[11,"fmt","bdk","",2,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::esplora","",6,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::compact_filters","",8,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::error","",24,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::policy","",40,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::address_validator","",43,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::signer","",50,[[["formatter",3]],["result",6]]],[11,"hash","bdk::blockchain","",5,[[]]],[11,"hash","bdk::descriptor::policy","",26,[[]]],[11,"hash","bdk","",4,[[]]],[11,"hash","bdk::wallet::signer","",49,[[]]],[11,"hash","bdk::wallet::tx_builder","",53,[[]]],[11,"hash","","",54,[[]]],[11,"from_str","bdk::wallet::export","",47,[[],["result",4]]],[11,"serialize","bdk::descriptor::policy","",64,[[],["result",4]]],[11,"serialize","","",27,[[],["result",4]]],[11,"serialize","","",36,[[],["result",4]]],[11,"serialize","","",25,[[],["result",4]]],[11,"serialize","","",26,[[],["result",4]]],[11,"serialize","bdk","",4,[[],["result",4]]],[11,"serialize","","",0,[[],["result",4]]],[11,"serialize","","",1,[[],["result",4]]],[11,"serialize","bdk::wallet::export","",47,[[],["result",4]]],[11,"deserialize","bdk","",4,[[],["result",4]]],[11,"deserialize","","",0,[[],["result",4]]],[11,"deserialize","","",1,[[],["result",4]]],[11,"deserialize","bdk::wallet::export","",47,[[],["result",4]]],[11,"translate_pk","bdk::descriptor","Convert a descriptor using abstract keys to one using…",18,[[],[["result",4],["descriptor",4]]]],[11,"address","","Computes the Bitcoin address of the descriptor, if one…",18,[[["network",4]],[["option",4],["address",3]]]],[11,"script_pubkey","","Computes the scriptpubkey of the descriptor",18,[[],["script",3]]],[11,"unsigned_script_sig","","Computes the scriptSig that will be in place for an…",18,[[],["script",3]]],[11,"witness_script","","Computes the \\\"witness script\\\" of the descriptor, i.e. the…",18,[[],["script",3]]],[11,"satisfy","","Attempts to produce a satisfying witness and scriptSig to…",18,[[["txin",3]],[["error",4],["result",4]]]],[11,"max_satisfaction_weight","","Computes an upper bound on the weight of a satisfying…",18,[[]]],[11,"derive","","Derives all wildcard keys in the descriptor using the…",18,[[],[["descriptor",4],["descriptorpublickey",4]]]],[11,"parse_secret","","",18,[[],[["error",4],["result",4]]]],[11,"to_string_with_secret","","",18,[[["hashmap",3]],["string",3]]],[11,"from_ast","","Add type information(Type and Extdata) to Miniscript based…",19,[[["terminal",4]],[["error",4],["miniscript",3],["result",4]]]],[11,"into_inner","","Extracts the `AstElem` representing the root of the…",19,[[],["terminal",4]]],[11,"as_inner","","",19,[[],["terminal",4]]],[11,"parse","","Attempt to parse a script into a Miniscript representation",19,[[["script",3]],[["error",4],["miniscript",3],["result",4]]]],[11,"encode","","Encode as a Bitcoin script",19,[[],["script",3]]],[11,"script_size","","Size, in bytes of the script-pubkey. If this Miniscript is…",19,[[]]],[11,"max_satisfaction_witness_elements","","Maximum number of witness elements used to satisfy the…",19,[[]]],[11,"max_satisfaction_size","","Maximum size, in bytes, of a satisfying witness. For…",19,[[]]],[11,"translate_pk","","This will panic if translatefpk returns an uncompressed…",19,[[],[["miniscript",3],["result",4]]]],[11,"satisfy","","Attempt to produce a satisfying witness for the witness…",19,[[],[["vec",3],["option",4]]]],[11,"translate_pk","","Convert an AST element with one public key type to one of…",22,[[],[["terminal",4],["result",4]]]],[11,"encode","","Encode the element as a fragment of Bitcoin Script. The…",22,[[["builder",3]],["builder",3]]],[11,"script_size","","Size, in bytes of the script-pubkey. If this Miniscript is…",22,[[]]],[11,"max_dissatisfaction_witness_elements","","Maximum number of witness elements used to dissatisfy the…",22,[[],["option",4]]],[11,"max_dissatisfaction_size","","Maximum dissatisfaction cost, in bytes, of a Miniscript…",22,[[],["option",4]]],[11,"max_satisfaction_witness_elements","","Maximum number of witness elements used to satisfy the…",22,[[]]],[11,"max_satisfaction_size","","Maximum size, in bytes, of a satisfying witness. For…",22,[[]]]],"p":[[3,"UTXO"],[3,"TransactionDetails"],[4,"Error"],[13,"FeeRateTooLow"],[4,"ScriptType"],[4,"Capability"],[4,"EsploraError"],[3,"EsploraBlockchain"],[4,"CompactFiltersError"],[3,"Mempool"],[3,"Peer"],[3,"CompactFiltersBlockchain"],[8,"Blockchain"],[8,"Progress"],[3,"MemoryDatabase"],[8,"BatchOperations"],[8,"Database"],[8,"BatchDatabase"],[4,"Descriptor"],[3,"Miniscript"],[8,"MiniscriptKey"],[8,"ScriptContext"],[4,"Terminal"],[8,"ToPublicKey"],[4,"Error"],[3,"Policy"],[3,"Condition"],[4,"SatisfiableItem"],[13,"SHA256Preimage"],[13,"HASH256Preimage"],[13,"RIPEMD160Preimage"],[13,"HASH160Preimage"],[13,"AbsoluteTimelock"],[13,"RelativeTimelock"],[13,"Thresh"],[13,"Multisig"],[4,"Satisfaction"],[13,"Partial"],[13,"PartialComplete"],[13,"Complete"],[4,"PolicyError"],[8,"ExtractPolicy"],[3,"FeeRate"],[4,"AddressValidatorError"],[8,"AddressValidator"],[3,"CoinSelectionResult"],[8,"CoinSelectionAlgorithm"],[3,"WalletExport"],[3,"SignerOrdering"],[4,"SignerId"],[4,"SignerError"],[8,"Signer"],[3,"SignersContainer"],[4,"TxOrdering"],[4,"ChangeSpendPolicy"],[3,"TxBuilder"],[8,"IsDust"],[3,"Wallet"],[3,"OfflineBlockchain"],[3,"NoopProgress"],[3,"LogProgress"],[3,"ElectrumBlockchain"],[4,"Legacy"],[4,"Segwitv0"],[3,"PKOrF"],[3,"DumbCoinSelection"]]}\ }'); addSearchOptions(searchIndex);initSearch(searchIndex); \ No newline at end of file