fn update_view(&mut self, self_node: &Node, known_nodes: &BTreeMap<Id, Node>) {
        self.neighbors = BTreeMap::new();

        for topic in self_node.subscriptions.topics() {
            let view = select_best_nodes_for_topic(*self_node.id(), topic, known_nodes);

            self.neighbors.insert(*topic, view);
        }
    }
// update the Rings view (neighbors for every topics) with the given new nodes
update the Rings view (neighbors for every topics) with the given new nodes
update the Rings view ( neighbors for every topics ) with the given new nodes
fn update_view(&mut self, self_node: &Node, known_nodes: &BTreeMap<Id, Node>) {
        self.neighbors = BTreeMap::new();
        for topic in self_node.subscriptions.topics() {
            let view = select_best_nodes_for_topic(*self_node.id(), topic, known_nodes);
            self.neighbors.insert(*topic, view);
        }
    }
fn update_view ( & mut self , self_node : & Node , known_nodes : & BTreeMap < Id , Node > ) { self . neighbors = BTreeMap :: new ( ) ; for topic in self_node . subscriptions . topics ( ) { let view = select_best_nodes_for_topic ( * self_node . id ( ) , topic , known_nodes ) ; self . neighbors . insert ( * topic , view ) ; } }
update the Rings view (neighbors for every topics) with the given new nodes
update the Rings view ( neighbors for every topics ) with the given new nodes
&mut self
self_node
&Node
known_nodes
&BTreeMap<Id, Node>