Trait dht::GenericNodeTable
[−]
[src]
pub trait GenericNodeTable<TId>: Send + Sync where TId: GenericId { fn random_id(&self) -> TId; fn update(&mut self, node: &Node<TId>) -> bool; fn find(&self, id: &TId, count: usize) -> Vec<Node<TId>>; fn pop_oldest(&mut self) -> Vec<Node<TId>>; }
Trait representing table with known nodes.
Keeps some reasonable subset of known nodes passed to update
.
Required Methods
fn random_id(&self) -> TId
Generate suitable random ID.
fn update(&mut self, node: &Node<TId>) -> bool
Store or update node in the table.
fn find(&self, id: &TId, count: usize) -> Vec<Node<TId>>
Find given number of node, closest to given ID.
fn pop_oldest(&mut self) -> Vec<Node<TId>>
Pop expired or the oldest nodes from table for inspection.
Implementors
impl<TId> GenericNodeTable<TId> for KNodeTable<TId> where TId: GenericId