INNER CODE UNIT · Rust
ego_depths
rlaope/estudy · site/graph/crates/graph-wasm/src/lib.rs:279
pub fn ego_depths(node_id: u32, depth: u32) -> Vec<u8> {
G.with(|g| {
let g = g.borrow();
let n = g.offsets.len().saturating_sub(1);
let mut dist = vec![255u8; n];
if (node_id as usize) >= n {
return dist;
}
dist[node_id as usize] = 0;
let mut frontier = vec![node_id];
for d in 1..=depth.min(254) {
let mut next = Vec::new();
for &u in &frontier {
if u != node_id && !expandable(&g, u) {
continue;
}
let (a, b) = (
g.offsets[u as usize] as usize,