(&self)
| 77 | } |
| 78 | |
| 79 | fn list_registered_changes(&self) -> PristineResult<Vec<(NodeId, Hash)>> { |
| 80 | let external = self.txn.open_table(EXTERNAL)?; |
| 81 | let node_types = self.txn.open_table(NODE_TYPES)?; |
| 82 | let mut changes = Vec::new(); |
| 83 | for result in external.iter()? { |
| 84 | let (key, value) = result?; |
| 85 | let node_id = NodeId::new(key.value()); |
| 86 | let is_change = node_types |
| 87 | .get(node_id.get())? |
| 88 | .map(|node_type| node_type.value() == node_type::CHANGE) |
| 89 | .unwrap_or(true); |
| 90 | if is_change { |
| 91 | changes.push((node_id, Hash::from_bytes(*value.value()))); |
| 92 | } |
| 93 | } |
| 94 | Ok(changes) |
| 95 | } |
| 96 | |
| 97 | fn iter_adjacent( |
| 98 | &self, |
no test coverage detected