(source: &str)
| 92 | } |
| 93 | |
| 94 | fn parse_source(source: &str) -> Result<Tree, String> { |
| 95 | let mut parser = Parser::new(); |
| 96 | let language = crate::extraction::ts_provider::try_language("haskell")?; |
| 97 | parser |
| 98 | .set_language(&language) |
| 99 | .map_err(|e| format!("failed to load Haskell grammar: {e}"))?; |
| 100 | parser |
| 101 | .parse(source, None) |
| 102 | .ok_or_else(|| "tree-sitter parse returned None".to_string()) |
| 103 | } |
| 104 | |
| 105 | fn visit_children(state: &mut ExtractionState, node: TsNode<'_>) { |
| 106 | let mut cursor = node.walk(); |
nothing calls this directly
no test coverage detected