guarding_ident/identify/
code_ident.rs

1use tree_sitter::{Node, QueryCapture};
2
3use guarding_core::domain::code_function::CodeFunction;
4use guarding_core::domain::code_file::CodeFile;
5use guarding_core::domain::Location;
6
7pub trait CodeIdent {
8    fn parse(code: &str) -> CodeFile;
9
10    fn insert_location<T: Location>(model: &mut T, node: Node) {
11        model.set_start(node.start_position().row, node.start_position().column);
12        model.set_end(node.end_position().row, node.end_position().column);
13    }
14
15    fn create_function( capture: QueryCapture, text: &str) -> CodeFunction {
16        let mut function = CodeFunction::default();
17        function.name = text.to_string();
18
19        let node = capture.node.parent().unwrap();
20        // RustIdent::insert_location(&mut function, node);
21
22        function.set_start(node.start_position().row, node.start_position().column);
23        function.set_end(node.end_position().row, node.end_position().column);
24
25        function
26    }
27}