X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning-block-sync%2Fsrc%2Flib.rs;h=58f77bdcabaf959c770c089bcb5ad960ac78e8b8;hb=08ae2f214c5c5246ccf61b3ff8a0bcd52a88adf9;hp=b2315e907d25d6411c908950a13f6dabfb76a5e6;hpb=9860646e73e3043d96f172b8797f578b439256f5;p=rust-lightning diff --git a/lightning-block-sync/src/lib.rs b/lightning-block-sync/src/lib.rs index b2315e907..58f77bdca 100644 --- a/lightning-block-sync/src/lib.rs +++ b/lightning-block-sync/src/lib.rs @@ -3,8 +3,29 @@ //! Defines a [`BlockSource`] trait, which is an asynchronous interface for retrieving block headers //! and data. //! +//! Enabling feature `rest-client` or `rpc-client` allows configuring the client to fetch blocks +//! using Bitcoin Core's REST or RPC interface, respectively. +//! +//! Both features support either blocking I/O using `std::net::TcpStream` or, with feature `tokio`, +//! non-blocking I/O using `tokio::net::TcpStream` from inside a Tokio runtime. +//! //! [`BlockSource`]: trait.BlockSource.html +#[cfg(any(feature = "rest-client", feature = "rpc-client"))] +pub mod http; + +#[cfg(feature = "rest-client")] +pub mod rest; + +#[cfg(feature = "rpc-client")] +pub mod rpc; + +#[cfg(any(feature = "rest-client", feature = "rpc-client"))] +mod convert; + +#[cfg(any(feature = "rest-client", feature = "rpc-client"))] +mod utils; + use bitcoin::blockdata::block::{Block, BlockHeader}; use bitcoin::hash_types::BlockHash; use bitcoin::util::uint::Uint256;