(&mut self, key: K)
| 342 | } |
| 343 | |
| 344 | fn find_entrypoint(&mut self, key: K) -> Result<usize, io::Error> { |
| 345 | let mut current_offset = self.storage_manager.root_offset(); |
| 346 | let mut node = self.storage_manager.load_node(current_offset)?; |
| 347 | |
| 348 | while node.node_type == NodeType::Internal { |
| 349 | let idx = node.keys.binary_search(&key).unwrap_or_else(|x| x); |
| 350 | current_offset = node.children[idx]; |
| 351 | node = self.storage_manager.load_node(current_offset)?; |
| 352 | } |
| 353 | |
| 354 | Ok(current_offset) |
| 355 | } |
| 356 | } |
no test coverage detected