pecto_python/parser.rs
1use tree_sitter::{Parser, Tree};
2
3/// Create a tree-sitter parser for Python.
4pub fn python_parser() -> Parser {
5 let mut parser = Parser::new();
6 parser
7 .set_language(&tree_sitter_python::LANGUAGE.into())
8 .expect("Failed to load Python grammar");
9 parser
10}
11
12/// Parse Python source code into a tree-sitter AST.
13pub fn parse_python(source: &str) -> Option<Tree> {
14 let mut parser = python_parser();
15 parser.parse(source, None)
16}