Skip to main content

ab_networking/
lib.rs

1//! Networking functionality for Abundance, primarily used for DSN (Distributed Storage
2//! Network).
3
4#![feature(exact_size_is_empty, ip, trivial_bounds)]
5#![warn(missing_docs)]
6
7mod behavior;
8mod constructor;
9mod node;
10mod node_runner;
11pub mod protocols;
12
13mod shared;
14pub mod utils;
15
16pub use crate::behavior::persistent_parameters::{
17    KnownPeersManager, KnownPeersManagerConfig, KnownPeersManagerPersistenceError,
18    KnownPeersRegistry, PeerAddressRemovedEvent,
19};
20pub use crate::node::{
21    GetClosestPeersError, Node, SendRequestError, SubscribeError, TopicSubscription, WeakNode,
22};
23pub use crate::node_runner::NodeRunner;
24pub use constructor::{Config, CreationError, KademliaMode, construct, peer_id};
25pub use libp2p;
26pub use shared::PeerDiscovered;
27pub use utils::PeerAddress;
28pub use utils::key_with_distance::KeyWithDistance;
29pub use utils::multihash::Multihash;