summary refs log tree commit diff
path: root/src/libsyntax/parse/token.rs
diff options
context:
space:
mode:
authorPaul Stansifer <paul.stansifer@gmail.com>2012-06-12 10:50:17 -0700
committerPaul Stansifer <paul.stansifer@gmail.com>2012-06-15 12:41:41 -0700
commitd6522ab2d3f7ab03c6d5d93ea196137823d2cfcf (patch)
tree22fbcaa419a7f10e75a728f810a21b13875561e9 /src/libsyntax/parse/token.rs
parentd906fba63621d049bdbd0fe9478fef383efb2341 (diff)
downloadrust-d6522ab2d3f7ab03c6d5d93ea196137823d2cfcf.tar.gz
rust-d6522ab2d3f7ab03c6d5d93ea196137823d2cfcf.zip
Beginning of support for interpolation into token trees.
Diffstat (limited to 'src/libsyntax/parse/token.rs')
-rw-r--r--src/libsyntax/parse/token.rs16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/libsyntax/parse/token.rs b/src/libsyntax/parse/token.rs
index 981d7f9742e..7fb6165f7f1 100644
--- a/src/libsyntax/parse/token.rs
+++ b/src/libsyntax/parse/token.rs
@@ -77,9 +77,25 @@ enum token {
     /* Name components */
     IDENT(str_num, bool),
     UNDERSCORE,
+
+    //ACTUALLY(whole_nonterminal),
+
     EOF,
 }
 
+#[auto_serialize]
+#[doc = "For interpolation during macro expansion."]
+enum whole_nonterminal {
+    w_item(@ast::item),
+    w_block(ast::blk),
+    w_stmt(@ast::stmt),
+    w_pat( @ast::pat),
+    w_expr(@ast::expr),
+    w_ty(  @ast::ty),
+    w_ident(ast::ident),
+    w_path(@ast::path),
+}
+
 fn binop_to_str(o: binop) -> str {
     alt o {
       PLUS { "+" }