about summary refs log tree commit diff
path: root/src/comp/front
diff options
context:
space:
mode:
authorBrian Anderson <andersrb@gmail.com>2011-04-13 20:51:24 -0400
committerBrian Anderson <andersrb@gmail.com>2011-04-13 22:14:40 -0400
commit5c0f4c1939b392e0bd0bcbce86fa83eb7a421992 (patch)
tree9d88f7766e9b3526ffccb2a38c06acbcd38e009f /src/comp/front
parent4844e1c08a0f87f8c2bf4ba752630e1af0794a63 (diff)
downloadrust-5c0f4c1939b392e0bd0bcbce86fa83eb7a421992.tar.gz
rust-5c0f4c1939b392e0bd0bcbce86fa83eb7a421992.zip
Add more commentary about ExtFmt
Diffstat (limited to 'src/comp/front')
-rw-r--r--src/comp/front/extfmt.rs21
1 files changed, 7 insertions, 14 deletions
diff --git a/src/comp/front/extfmt.rs b/src/comp/front/extfmt.rs
index bb9f88324b0..54174dd3d1b 100644
--- a/src/comp/front/extfmt.rs
+++ b/src/comp/front/extfmt.rs
@@ -1,16 +1,7 @@
-/* The 'fmt' extension is modeled on the posix printf system.
- *
- * A posix conversion ostensibly looks like this:
- *
- * %[parameter][flags][width][.precision][length]type
- *
- * Given the different numeric type bestiary we have, we omit the 'length'
- * parameter and support slightly different conversions for 'type':
- *
- * %[parameter][flags][width][.precision]type
- *
- * we also only support translating-to-rust a tiny subset of the possible
- * combinations at the moment.
+/*
+ * The compiler code necessary to support the #fmt extension.  Eventually this
+ * should all get sucked into either the standard library ExtFmt module or the
+ * compiler syntax extension plugin interface.
  */
 
 import util.common;
@@ -53,7 +44,7 @@ import std.ExtFmt.CT.parse_fmt_string;
 
 export expand_syntax_ext;
 
-// TODO: Need to thread parser through here to handle errors correctly
+// FIXME: Need to thread parser through here to handle errors correctly
 fn expand_syntax_ext(vec[@ast.expr] args,
                      option.t[@ast.expr] body) -> @ast.expr {
 
@@ -148,6 +139,8 @@ fn pieces_to_expr(vec[piece] pieces, vec[@ast.expr] args) -> @ast.expr {
     }
 
     fn make_path_vec(str ident) -> vec[str] {
+        // FIXME: #fmt can't currently be used from within std
+        // because we're explicitly referencing the 'std' crate here
         ret vec("std", "ExtFmt", "RT", ident);
     }