pub fn dense_node_map_from_edges(
edges: &[EdgeRow],
) -> Result<BTreeMap<NodeKey, u32>, BuildError>Expand description
Builds the dense node-id assignment used by DualTopologySnapshot::from_edge_rows.
Keys are sorted in ascending NodeKey order; dense ids are 0..key_count.
§Errors
Returns BuildError::NodeCountOverflow when the distinct key count does not fit in u32.
§Performance
This function is O(n log n + m) for n distinct keys and m edges.