(source: &str)
| 105 | } |
| 106 | |
| 107 | fn parse(source: &str) -> Result<Tree, String> { |
| 108 | let mut parser = Parser::new(); |
| 109 | let language = crate::extraction::ts_provider::try_language("lean")?; |
| 110 | parser |
| 111 | .set_language(&language) |
| 112 | .map_err(|e| format!("failed to load Lean grammar: {e}"))?; |
| 113 | parser |
| 114 | .parse(source, None) |
| 115 | .ok_or_else(|| "tree-sitter parse returned None".to_string()) |
| 116 | } |
| 117 | |
| 118 | fn visit(state: &mut ExtractionState, node: TsNode<'_>) { |
| 119 | // Skip anonymous keyword tokens (e.g. the literal `namespace`, |
no test coverage detected