#![warn(missing_docs)]
pub mod did;
pub use did::Did;
mod chord;
pub use chord::TopoInfo;
pub mod finger;
pub mod successor;
pub use successor::SuccessorReader;
pub use successor::SuccessorWriter;
pub mod types;
pub use chord::PeerRing;
pub use chord::PeerRingAction;
pub use chord::RemoteAction as PeerRingRemoteAction;
pub use finger::FingerTable;
pub use types::Chord;
pub use types::ChordStorage;
pub use types::ChordStorageCache;
pub use types::ChordStorageSync;
pub use types::CorrectChord;
pub use types::LiveDid;
mod stabilization;
pub use stabilization::Stabilization;
pub use stabilization::TStabilize;
pub mod subring;
pub mod vnode;
#[cfg(test)]
pub mod tests {
use super::*;
use crate::ecc::tests::gen_ordered_keys;
pub fn gen_ordered_dids(n: usize) -> Vec<Did> {
gen_ordered_keys(n)
.iter()
.map(|x| x.address().into())
.collect()
}
}