Mercurial > python-compiler.rs
view src/python_parse.rs @ 13:38b0d63697b1
Import the full AST grammar from CPython 3.5.
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Thu, 02 Jun 2016 05:33:23 +0100 |
parents | 211b0df72e64 |
children |
line wrap: on
line source
extern crate cpython; use cpython::{Python, PyObject, PyErr}; use cpython::ObjectProtocol; //for call method pub fn parse_ast(code: String) -> Result<PyObject, PyErr> { let gil = Python::acquire_gil(); let py = gil.python(); let ast_module = py.import("ast").unwrap(); let ast_parse = ast_module.get(py, "parse").unwrap(); let real_ast = try!(ast_parse.call(py, (code,), None)); Ok(real_ast) }