aboutsummaryrefslogtreecommitdiff
path: root/src/comp/front/ast.rs
diff options
context:
space:
mode:
authorBrian Anderson <[email protected]>2011-03-26 00:53:57 -0400
committerGraydon Hoare <[email protected]>2011-03-28 21:13:53 -0700
commit2b27d12ce1b3babf4adea41d669140019cb80b8a (patch)
treec8e113ccede4de3475be1639de445a761b755ae4 /src/comp/front/ast.rs
parentAdd 'self' keyword. (diff)
downloadrust-2b27d12ce1b3babf4adea41d669140019cb80b8a.tar.xz
rust-2b27d12ce1b3babf4adea41d669140019cb80b8a.zip
Add expr_spawn, spawn parsing, folding, typechecking, ty_task
Diffstat (limited to 'src/comp/front/ast.rs')
-rw-r--r--src/comp/front/ast.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/comp/front/ast.rs b/src/comp/front/ast.rs
index c4c1a56b..8458a749 100644
--- a/src/comp/front/ast.rs
+++ b/src/comp/front/ast.rs
@@ -219,6 +219,11 @@ type arm = rec(@pat pat, block block, hashmap[ident,def_id] index);
type elt = rec(mutability mut, @expr expr);
type field = rec(mutability mut, ident ident, @expr expr);
+tag spawn_dom {
+ dom_implicit;
+ dom_thread;
+}
+
type expr = spanned[expr_];
tag expr_ {
expr_vec(vec[@expr], mutability, ann);
@@ -226,6 +231,7 @@ tag expr_ {
expr_rec(vec[field], option.t[@expr], ann);
expr_call(@expr, vec[@expr], ann);
expr_bind(@expr, vec[option.t[@expr]], ann);
+ expr_spawn(spawn_dom, option.t[str], @expr, vec[@expr], ann);
expr_binary(binop, @expr, @expr, ann);
expr_unary(unop, @expr, ann);
expr_lit(@lit, ann);