daipendency-extractor-rust 0.5.0

Daipendency extractor for Rust library crates
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#![cfg(test)]

use tree_sitter::Node;

pub fn find_child_nodes<'tree>(root: Node<'tree>, kind: &str) -> Vec<Node<'tree>> {
    let mut cursor = root.walk();
    root.children(&mut cursor)
        .filter(|node| node.kind() == kind)
        .collect()
}

pub fn find_child_node<'tree>(root: Node<'tree>, kind: &str) -> Node<'tree> {
    let nodes = find_child_nodes(root, kind);
    assert_eq!(nodes.len(), 1);
    nodes[0]
}