view src/python_parse.rs @ 44:5f1d285471af

Finish ImportFrom conversion and add a test for it.
author Bastien Orivel <eijebong@bananium.fr>
date Tue, 07 Jun 2016 12:19:10 +0200
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)
}