Enum bdk::blockchain::any::AnyBlockchainConfig [−][src]
pub enum AnyBlockchainConfig { Electrum(ElectrumBlockchainConfig), Esplora(EsploraBlockchainConfig), CompactFilters(CompactFiltersBlockchainConfig), }
Expand description
Type that can contain any of the blockchain configurations defined by the library
This allows storing a single configuration that can be loaded into an AnyBlockchain
instance. Wallets that plan to offer users the ability to switch blockchain backend at runtime
will find this particularly useful.
This type can be serialized from a JSON object like:
use bdk::blockchain::{electrum::ElectrumBlockchainConfig, AnyBlockchainConfig}; let config: AnyBlockchainConfig = serde_json::from_str( r#"{ "type" : "electrum", "url" : "ssl://electrum.blockstream.info:50002", "retry": 2 }"#, ) .unwrap(); assert_eq!( config, AnyBlockchainConfig::Electrum(ElectrumBlockchainConfig { url: "ssl://electrum.blockstream.info:50002".into(), retry: 2, socks5: None, timeout: None }) );
Variants
Electrum(ElectrumBlockchainConfig)
electrum
only.Expand description
Electrum client
Esplora(EsploraBlockchainConfig)
esplora
only.Expand description
Esplora client
CompactFilters(CompactFiltersBlockchainConfig)
compact_filters
only.Expand description
Compact filters client
Trait Implementations
impl Clone for AnyBlockchainConfig
[src]
impl Clone for AnyBlockchainConfig
[src]fn clone(&self) -> AnyBlockchainConfig
[src]
fn clone(&self) -> AnyBlockchainConfig
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl Debug for AnyBlockchainConfig
[src]
impl Debug for AnyBlockchainConfig
[src]impl<'de> Deserialize<'de> for AnyBlockchainConfig
[src]
impl<'de> Deserialize<'de> for AnyBlockchainConfig
[src]fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]Deserialize this value from the given Serde deserializer. Read more
impl From<CompactFiltersBlockchainConfig> for AnyBlockchainConfig
[src]
impl From<CompactFiltersBlockchainConfig> for AnyBlockchainConfig
[src]fn from(inner: CompactFiltersBlockchainConfig) -> Self
[src]
fn from(inner: CompactFiltersBlockchainConfig) -> Self
[src]Performs the conversion.
impl From<ElectrumBlockchainConfig> for AnyBlockchainConfig
[src]
impl From<ElectrumBlockchainConfig> for AnyBlockchainConfig
[src]fn from(inner: ElectrumBlockchainConfig) -> Self
[src]
fn from(inner: ElectrumBlockchainConfig) -> Self
[src]Performs the conversion.
impl From<EsploraBlockchainConfig> for AnyBlockchainConfig
[src]
impl From<EsploraBlockchainConfig> for AnyBlockchainConfig
[src]fn from(inner: EsploraBlockchainConfig) -> Self
[src]
fn from(inner: EsploraBlockchainConfig) -> Self
[src]Performs the conversion.
impl PartialEq<AnyBlockchainConfig> for AnyBlockchainConfig
[src]
impl PartialEq<AnyBlockchainConfig> for AnyBlockchainConfig
[src]fn eq(&self, other: &AnyBlockchainConfig) -> bool
[src]
fn eq(&self, other: &AnyBlockchainConfig) -> bool
[src]This method tests for self
and other
values to be equal, and is used
by ==
. Read more
fn ne(&self, other: &AnyBlockchainConfig) -> bool
[src]
fn ne(&self, other: &AnyBlockchainConfig) -> bool
[src]This method tests for !=
.
impl Serialize for AnyBlockchainConfig
[src]
impl Serialize for AnyBlockchainConfig
[src]impl StructuralPartialEq for AnyBlockchainConfig
[src]
Auto Trait Implementations
impl RefUnwindSafe for AnyBlockchainConfig
impl Send for AnyBlockchainConfig
impl Sync for AnyBlockchainConfig
impl Unpin for AnyBlockchainConfig
impl UnwindSafe for AnyBlockchainConfig
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Instrument for T
[src]
impl<T> Instrument for T
[src]fn instrument(self, span: Span) -> Instrumented<Self>
[src]
fn instrument(self, span: Span) -> Instrumented<Self>
[src]Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
fn in_current_span(self) -> Instrumented<Self>
[src]
fn in_current_span(self) -> Instrumented<Self>
[src]impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
pub fn vzip(self) -> V
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,