(
txn: &T,
inode: Inode,
node: GraphNode<NodeId>,
visible: &HashSet<NodeId>,
)
| 268 | } |
| 269 | |
| 270 | fn import_seed_is_dead<T>( |
| 271 | txn: &T, |
| 272 | inode: Inode, |
| 273 | node: GraphNode<NodeId>, |
| 274 | visible: &HashSet<NodeId>, |
| 275 | ) -> bool |
| 276 | where |
| 277 | T: GraphTxnT + InodeGraphOps, |
| 278 | { |
| 279 | let mut parents = match txn.init_inode_adj(inode, node, EdgeFlags::PARENT, EdgeFlags::all()) { |
| 280 | Ok(adj) => adj, |
| 281 | Err(_) => return false, |
| 282 | }; |
| 283 | while let Some(edge) = txn.next_inode_adj(&mut parents) { |
| 284 | let Ok(edge) = edge else { |
| 285 | continue; |
| 286 | }; |
| 287 | let flags = edge.flag(); |
| 288 | if flags.contains(EdgeFlags::PARENT) |
| 289 | && flags.contains(EdgeFlags::DELETED) |
| 290 | && import_seed_edge_visible(&edge, visible) |
| 291 | { |
| 292 | return true; |
| 293 | } |
| 294 | } |
| 295 | false |
| 296 | } |
| 297 | |
| 298 | fn import_seed_alive_reaches<T>( |
| 299 | txn: &T, |
no test coverage detected