diff options
Diffstat (limited to 'src/comp/front/ast.rs')
| -rw-r--r-- | src/comp/front/ast.rs | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/comp/front/ast.rs b/src/comp/front/ast.rs index aa4ed1e7..5af9fa8b 100644 --- a/src/comp/front/ast.rs +++ b/src/comp/front/ast.rs @@ -89,12 +89,18 @@ tag expr_ { expr_binary(binop, @expr, @expr); expr_unary(unop, @expr); expr_lit(@lit); - expr_name(name, option[referent]); - expr_field(@expr, ident); - expr_index(@expr, @expr); expr_cast(@expr, @ty); expr_if(@expr, block, option[block]); expr_block(block); + expr_assign(@lval, @expr); + expr_lval(@lval); +} + +type lval = spanned[lval_]; +tag lval_ { + lval_field(@expr, ident); + lval_index(@expr, @expr); + lval_name(name, option[referent]); } type lit = spanned[lit_]; |