Mercurial > python-compiler.rs
changeset 22:25b202005d1d
Return a String from ast_dump instead of printing it directly.
author | Bastien Orivel <eijebong@bananium.fr> |
---|---|
date | Fri, 03 Jun 2016 19:00:09 +0200 |
parents | 7af637f444d1 |
children | 5a7c3393382b |
files | src/ast_dump.rs src/main.rs |
diffstat | 2 files changed, 7 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ast_dump.rs +++ b/src/ast_dump.rs @@ -209,8 +209,12 @@ impl stmt { } #[allow(dead_code)] -pub fn dump_ast(ast: &Module) { +pub fn dump_ast(ast: &Module) -> String { + let mut dumped_statements = vec!(); for statement in &ast.statements { - println!("{}", statement.to_string(0)); + let dumped_statement = statement.to_string(0); + dumped_statements.push(dumped_statement); } + dumped_statements.join("\n") } +
--- a/src/main.rs +++ b/src/main.rs @@ -49,7 +49,7 @@ fn main() { //python_dump::dump_module(&module); let module_ast = ast_convert::convert_ast("__main__".to_string(), &module); - ast_dump::dump_ast(&module_ast); + println!("{}", ast_dump::dump_ast(&module_ast)); //let scoped_ast = ast_scope::scope_ast(vec!(module_ast)); //println!("{:#?}", scoped_ast); //let new_scoped_ast = ast_scope::check_scoping(scoped_ast);