(
&mut self,
txn: &T,
inode: Inode,
pos: Position<NodeId>,
)
| 117 | |
| 118 | impl ImportGraphFirstVertexCache { |
| 119 | fn find_end<T>( |
| 120 | &mut self, |
| 121 | txn: &T, |
| 122 | inode: Inode, |
| 123 | pos: Position<NodeId>, |
| 124 | ) -> Result<Option<GraphNode<NodeId>>, RepositoryError> |
| 125 | where |
| 126 | T: GraphTxnT + InodeGraphOps, |
| 127 | { |
| 128 | if let Some(node) = self.by_end_pos.get(&(inode, pos)) { |
| 129 | return Ok(Some(*node)); |
| 130 | } |
| 131 | let Some(node) = txn |
| 132 | .find_block_end_in_inode(inode, pos) |
| 133 | .map_err(|e| RepositoryError::Database(e.to_string()))? |
| 134 | else { |
| 135 | return Ok(None); |
| 136 | }; |
| 137 | self.by_end_pos.insert((inode, pos), node); |
| 138 | Ok(Some(node)) |
| 139 | } |
| 140 | |
| 141 | fn find_start<T>( |
| 142 | &mut self, |
no test coverage detected