rprlib/
lib.rs

1mod utils;
2pub mod node;
3pub mod parser;
4pub mod block;
5pub mod analysis;
6
7use pyo3::prelude::*;
8
9use crate::parser::parse;
10use crate::block::block;
11
12#[pymodule]
13pub fn rprlib(_py: Python, m: &PyModule) -> PyResult<()> {
14    #[pyfn(m, "get_nodes")]
15    fn get_nodes(_py: Python, i: &str) -> PyResult<String> {    
16        let r = parse(i);
17        let r = r.expect("parser error");
18        let out_str= serde_json::to_string(&r).unwrap();
19        Ok(out_str)
20    }
21
22    #[pyfn(m, "get_blocks")]
23    fn get_blocks(_py: Python, i: &str) -> PyResult<String> {
24        let r = parse(i);
25        let r = r.expect("parser error");
26        let r = block(r);
27        let out_str= serde_json::to_string(&r).unwrap();
28        Ok(out_str)
29    }
30    Ok(())
31}
32
33mod test {
34    #[test]
35    fn test1() {
36
37    }
38}