pub fn generate_node_id(
file_path: &str,
containment_stack: &[&str],
entity_name: &str,
line: Option<usize>,
) -> StringExpand description
Generate a hierarchical node ID for an entity.
Node IDs follow the format: file:Container1:Container2:Entity
§Arguments
file_path- Relative file path (e.g., “src/models.py”)containment_stack- Stack of parent entity namesentity_name- Name of the entityline- Line number for anonymous entities (e.g., lambdas)
§Examples
use codeprysm_core::parser::generate_node_id;
assert_eq!(
generate_node_id("src/models.py", &["User"], "save", None),
"src/models.py:User:save"
);
assert_eq!(
generate_node_id("src/utils.py", &["process"], "<lambda>", Some(42)),
"src/utils.py:process:<lambda>:42"
);