//!
//! # Features
//!
-//! - `std` (default): use the standard library, including its `HashMap`/`HashSet`. Without it,
-//! this crate is `no_std` and uses `alloc`'s `BTreeMap`/`BTreeSet` instead.
+//! - `std` (default): use the standard library, including its `HashMap`/`HashSet`. Without it, this
+//! crate is `no_std` and uses `alloc`'s `BTreeMap`/`BTreeSet` instead.
//! - `serde`: implement `serde::Serialize`/`serde::Deserialize` for this crate's types.
//! - `hashbrown`: use [`hashbrown`](https://docs.rs/hashbrown)'s `HashMap`/`HashSet` for this
-//! crate's hash collections (e.g. `bdk_chain`'s `TxGraph`), on `std` builds too. These hash
-//! with `ahash` using fixed, publicly known keys unless `ahash`'s `runtime-rng` or
-//! `compile-time-rng` feature is enabled somewhere in the dependency graph. With fixed keys, a
-//! malicious chain source can send transactions crafted to collide, making insertion
-//! quadratic. To randomize the keys, depend on
-//! `ahash = { version = "0.8", features = ["runtime-rng"] }` (or `compile-time-rng`) yourself.
+//! crate's hash collections (e.g. `bdk_chain`'s `TxGraph`), on `std` builds too. These hash with
+//! `ahash` using fixed, publicly known keys unless `ahash`'s `runtime-rng` or `compile-time-rng`
+//! feature is enabled somewhere in the dependency graph. With fixed keys, a malicious chain
+//! source can send transactions crafted to collide, making insertion quadratic. To randomize the
+//! keys, depend on `ahash = { version = "0.8", features = ["runtime-rng"] }` (or
+//! `compile-time-rng`) yourself.
// only enables the `doc_cfg` feature when the `docsrs` configuration attribute is defined
#![cfg_attr(docsrs, feature(doc_cfg))]