diff options
| author | Brian Anderson <[email protected]> | 2011-04-18 20:58:45 -0400 |
|---|---|---|
| committer | Brian Anderson <[email protected]> | 2011-04-18 21:36:04 -0400 |
| commit | d4f1a48111673c158d1c9493be4a87eaa24064b1 (patch) | |
| tree | 08dddcf2a24b2b1a9b2dd4d4d61eccc33b4b0df3 /src/comp | |
| parent | Boilerplate city, for anyone who wants it. (diff) | |
| download | rust-d4f1a48111673c158d1c9493be4a87eaa24064b1.tar.xz rust-d4f1a48111673c158d1c9493be4a87eaa24064b1.zip | |
Support 0 flag in #fmt
Diffstat (limited to 'src/comp')
| -rw-r--r-- | src/comp/front/extfmt.rs | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/src/comp/front/extfmt.rs b/src/comp/front/extfmt.rs index 287c7e55..cfb27dcc 100644 --- a/src/comp/front/extfmt.rs +++ b/src/comp/front/extfmt.rs @@ -171,20 +171,25 @@ fn pieces_to_expr(vec[piece] pieces, vec[@ast.expr] args) -> @ast.expr { fn make_flags(common.span sp, vec[flag] flags) -> @ast.expr { let vec[@ast.expr] flagexprs = vec(); for (flag f in flags) { + auto fstr; alt (f) { case (flag_left_justify) { - auto fstr = "flag_left_justify"; - flagexprs += vec(make_rt_path_expr(sp, fstr)); + fstr = "flag_left_justify"; } - case (flag_sign_always) { - auto fstr = "flag_sign_always"; - flagexprs += vec(make_rt_path_expr(sp, fstr)); + case (flag_left_zero_pad) { + fstr = "flag_left_zero_pad"; } case (flag_space_for_sign) { - auto fstr = "flag_space_for_sign"; - flagexprs += vec(make_rt_path_expr(sp, fstr)); + fstr = "flag_space_for_sign"; + } + case (flag_sign_always) { + fstr = "flag_sign_always"; + } + case (flag_alternate) { + fstr = "flag_alternate"; } } + flagexprs += vec(make_rt_path_expr(sp, fstr)); } // FIXME: 0-length vectors can't have their type inferred @@ -319,6 +324,8 @@ fn pieces_to_expr(vec[piece] pieces, vec[@ast.expr] args) -> @ast.expr { fail; } } + case (flag_left_zero_pad) { + } case (_) { log unsupported; fail; |