From d631f29d47578c46bfc01e1a8cc021b295866e0c Mon Sep 17 00:00:00 2001 From: Brian Anderson Date: Thu, 31 Mar 2011 20:29:59 -0400 Subject: Add block_to_str and expr_to_str methods to the pprust module. Since pprust is authed impure these can be used for debug logging. --- src/comp/pretty/pprust.rs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/comp') diff --git a/src/comp/pretty/pprust.rs b/src/comp/pretty/pprust.rs index d478227c..f3b0f3fe 100644 --- a/src/comp/pretty/pprust.rs +++ b/src/comp/pretty/pprust.rs @@ -32,6 +32,24 @@ fn ty_to_str(&@ast.ty ty) -> str { ret writer.get_str(); } +fn block_to_str(&ast.block blk) -> str { + auto writer = io.string_writer(); + auto s = @rec(s=pp.mkstate(writer.get_writer(), 78u), + comments=option.none[vec[lexer.cmnt]], + mutable cur_cmnt=0u); + print_block(s, blk); + ret writer.get_str(); +} + +fn expr_to_str(&@ast.expr e) -> str { + auto writer = io.string_writer(); + auto s = @rec(s=pp.mkstate(writer.get_writer(), 78u), + comments=option.none[vec[lexer.cmnt]], + mutable cur_cmnt=0u); + print_expr(s, e); + ret writer.get_str(); +} + impure fn hbox(ps s) { pp.hbox(s.s, indent_unit); } -- cgit v1.2.3