diff options
| author | Graydon Hoare <[email protected]> | 2010-11-03 10:29:48 -0700 |
|---|---|---|
| committer | Graydon Hoare <[email protected]> | 2010-11-03 10:29:48 -0700 |
| commit | dc299c9a19cd8e643258f07a485eaeecb3e900b9 (patch) | |
| tree | 4062a7c079e90f1d43ad73dbf805b86259b4e683 /src | |
| parent | Code sketch and comment notes on textual crate signatures. (diff) | |
| download | rust-dc299c9a19cd8e643258f07a485eaeecb3e900b9.tar.xz rust-dc299c9a19cd8e643258f07a485eaeecb3e900b9.zip | |
Teach rustc lexer about changes to stratum, opacity and effect keywords.
Diffstat (limited to 'src')
| -rw-r--r-- | src/comp/front/lexer.rs | 6 | ||||
| -rw-r--r-- | src/comp/front/token.rs | 20 |
2 files changed, 21 insertions, 5 deletions
diff --git a/src/comp/front/lexer.rs b/src/comp/front/lexer.rs index fbeee8cb..d2f308e3 100644 --- a/src/comp/front/lexer.rs +++ b/src/comp/front/lexer.rs @@ -117,8 +117,12 @@ fn new_reader(stdio_reader rdr, str filename) -> reader keywords.insert("claim", token.CLAIM); keywords.insert("prove", token.PROVE); - keywords.insert("io", token.IO); + keywords.insert("abs", token.ABS); + keywords.insert("state", token.STATE); + keywords.insert("gc", token.GC); + + keywords.insert("impure", token.IMPURE); keywords.insert("unsafe", token.UNSAFE); keywords.insert("native", token.NATIVE); diff --git a/src/comp/front/token.rs b/src/comp/front/token.rs index b9b2fa07..84869aac 100644 --- a/src/comp/front/token.rs +++ b/src/comp/front/token.rs @@ -89,9 +89,15 @@ tag token { CLAIM; PROVE; - /* Effect keywords */ - IO; + /* Opacity keywords */ + ABS; + + /* Stratum keywords */ STATE; + GC; + + /* Effect keywords */ + IMPURE; UNSAFE; /* Type qualifiers */ @@ -249,9 +255,15 @@ fn to_str(token t) -> str { case (CLAIM) { ret "claim"; } case (PROVE) { ret "prove"; } - /* Effect keywords */ - case (IO) { ret "io"; } + /* Opacity keywords */ + case (ABS) { ret "abs"; } + + /* Stratum keywords */ case (STATE) { ret "state"; } + case (GC) { ret "gc"; } + + /* Effect keywords */ + case (IMPURE) { ret "impure"; } case (UNSAFE) { ret "unsafe"; } /* Type qualifiers */ |