MCPcopy Create free account
hub / github.com/FuzzAnything/PromptFuzz / get_layer_child

Function get_layer_child

src/analysis/header.rs:107–130  ·  view source on GitHub ↗
(layered_nodes: Vec<(usize, &str)>, depth: usize)

Source from the content-addressed store, hash-verified

105}
106
107fn get_layer_child(layered_nodes: Vec<(usize, &str)>, depth: usize) -> Vec<TreeNode> {
108 let mut seq_each_layer = Vec::new();
109 let mut layer_seqs = Vec::new();
110 for (layer, node) in layered_nodes {
111 if layer == depth {
112 seq_each_layer.push(layer_seqs);
113 layer_seqs = Vec::new();
114 }
115 layer_seqs.push((layer, node));
116 }
117 seq_each_layer.push(layer_seqs);
118 seq_each_layer.retain(|x| !x.is_empty());
119
120 let mut childs = Vec::new();
121 for seq in seq_each_layer {
122 let root = seq[0];
123 let mut root = TreeNode::new(root.1.to_string());
124 for child in get_layer_child(seq[1..].to_vec(), depth + 1) {
125 root.add_child(child);
126 }
127 childs.push(root);
128 }
129 childs
130}
131
132fn parse_dependency_tree(output: &str, base_name: &str, header_path: &Path) -> Result<TreeNode> {
133 let mut node_layer: Vec<(usize, &str)> = Vec::new();

Callers 1

parse_dependency_treeFunction · 0.85

Calls 3

add_childMethod · 0.80
pushMethod · 0.45
is_emptyMethod · 0.45

Tested by

no test coverage detected