diff options
| author | Tim Chevalier <chevalier@alum.wellesley.edu> | 2012-08-21 17:22:45 -0700 |
|---|---|---|
| committer | Tim Chevalier <chevalier@alum.wellesley.edu> | 2012-08-22 16:14:39 -0700 |
| commit | 0a5f88a2406bf78a216ea8e2128441766dd7cd9c (patch) | |
| tree | c6aa97d45ee1fb9e16d33e6556b3111647b80e1b | |
| parent | 73ffc7e7005142c5a2d898fcb2aa39018efe07fb (diff) | |
| download | rust-0a5f88a2406bf78a216ea8e2128441766dd7cd9c.tar.gz rust-0a5f88a2406bf78a216ea8e2128441766dd7cd9c.zip | |
Change the log level to be an enum rather than an int
This allows for eliminating a match check.
| -rw-r--r-- | src/libsyntax/ast.rs | 6 | ||||
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 2 | ||||
| -rw-r--r-- | src/libsyntax/print/pprust.rs | 8 |
3 files changed, 10 insertions, 6 deletions
diff --git a/src/libsyntax/ast.rs b/src/libsyntax/ast.rs index 7d9803b4cc3..b20bcb5868a 100644 --- a/src/libsyntax/ast.rs +++ b/src/libsyntax/ast.rs @@ -310,6 +310,10 @@ type expr = {id: node_id, callee_id: node_id, node: expr_, span: span}; // Extra node ID is only used for index, assign_op, unary, binary #[auto_serialize] +enum log_level { error, debug, other } +// 0 = error, 1 = debug, 2 = other + +#[auto_serialize] enum alt_mode { alt_check, alt_exhaustive, } #[auto_serialize] @@ -354,7 +358,7 @@ enum expr_ { expr_break(option<ident>), expr_again(option<ident>), expr_ret(option<@expr>), - expr_log(int, @expr, @expr), + expr_log(log_level, @expr, @expr), /* just an assert */ expr_assert(@expr), diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index fea79309c21..fed81fa7520 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -947,7 +947,7 @@ struct parser { let lvl = self.parse_expr(); self.expect(token::COMMA); let e = self.parse_expr(); - ex = expr_log(2, lvl, e); + ex = expr_log(ast::other, lvl, e); hi = self.span.hi; self.expect(token::RPAREN); } else if self.eat_keyword(~"assert") { diff --git a/src/libsyntax/print/pprust.rs b/src/libsyntax/print/pprust.rs index 573eeffd968..f9d65bd7e47 100644 --- a/src/libsyntax/print/pprust.rs +++ b/src/libsyntax/print/pprust.rs @@ -1309,10 +1309,10 @@ fn print_expr(s: ps, &&expr: @ast::expr) { } } ast::expr_log(lvl, lexp, expr) => { - match check lvl { - 1 => { word_nbsp(s, ~"log"); print_expr(s, expr); } - 0 => { word_nbsp(s, ~"log_err"); print_expr(s, expr); } - 2 => { + match lvl { + ast::debug => { word_nbsp(s, ~"log"); print_expr(s, expr); } + ast::error => { word_nbsp(s, ~"log_err"); print_expr(s, expr); } + ast::other => { word_nbsp(s, ~"log"); popen(s); print_expr(s, lexp); |
