diff options
author | Caio <[email protected]> | 2019-03-09 23:40:22 +0000 |
---|---|---|
committer | Caio <[email protected]> | 2019-03-09 23:40:22 +0000 |
commit | ad72699553c39f159f25a6dc7ecd5df953817407 (patch) | |
tree | d0e0d665f23e8b55feb624fac45bc7de644d622c /crates/ra_syntax | |
parent | a9d09b7ec0721e9ad305866a57989d1aa9c67ec1 (diff) |
Add async keyword
Diffstat (limited to 'crates/ra_syntax')
5 files changed, 21 insertions, 1 deletions
diff --git a/crates/ra_syntax/src/grammar.ron b/crates/ra_syntax/src/grammar.ron index b7a2d1c01..66f1339c1 100644 --- a/crates/ra_syntax/src/grammar.ron +++ b/crates/ra_syntax/src/grammar.ron | |||
@@ -59,6 +59,7 @@ Grammar( | |||
59 | [">>=", "SHREQ"], | 59 | [">>=", "SHREQ"], |
60 | ], | 60 | ], |
61 | keywords: [ | 61 | keywords: [ |
62 | "async", | ||
62 | "use", | 63 | "use", |
63 | "fn", | 64 | "fn", |
64 | "struct", | 65 | "struct", |
diff --git a/crates/ra_syntax/tests/data/lexer/0011_keywords.rs b/crates/ra_syntax/tests/data/lexer/0011_keywords.rs index e6bf64d4d..1e91bff4e 100644 --- a/crates/ra_syntax/tests/data/lexer/0011_keywords.rs +++ b/crates/ra_syntax/tests/data/lexer/0011_keywords.rs | |||
@@ -1,3 +1,3 @@ | |||
1 | fn use struct trait enum impl true false as extern crate | 1 | async fn use struct trait enum impl true false as extern crate |
2 | mod pub self super in where for loop while if match const | 2 | mod pub self super in where for loop while if match const |
3 | static mut type ref let else move return | 3 | static mut type ref let else move return |
diff --git a/crates/ra_syntax/tests/data/lexer/0011_keywords.txt b/crates/ra_syntax/tests/data/lexer/0011_keywords.txt index d6a1abe8a..22c00eefb 100644 --- a/crates/ra_syntax/tests/data/lexer/0011_keywords.txt +++ b/crates/ra_syntax/tests/data/lexer/0011_keywords.txt | |||
@@ -1,3 +1,5 @@ | |||
1 | ASYNC_KW 5 "async" | ||
2 | WHITESPACE 1 " " | ||
1 | FN_KW 2 "fn" | 3 | FN_KW 2 "fn" |
2 | WHITESPACE 1 " " | 4 | WHITESPACE 1 " " |
3 | USE_KW 3 "use" | 5 | USE_KW 3 "use" |
diff --git a/crates/ra_syntax/tests/data/parser/inline/ok/0124_async_fn.rs b/crates/ra_syntax/tests/data/parser/inline/ok/0124_async_fn.rs new file mode 100644 index 000000000..f4adcb62b --- /dev/null +++ b/crates/ra_syntax/tests/data/parser/inline/ok/0124_async_fn.rs | |||
@@ -0,0 +1 @@ | |||
async fn foo() {} | |||
diff --git a/crates/ra_syntax/tests/data/parser/inline/ok/0124_async_fn.txt b/crates/ra_syntax/tests/data/parser/inline/ok/0124_async_fn.txt new file mode 100644 index 000000000..d1a706ecc --- /dev/null +++ b/crates/ra_syntax/tests/data/parser/inline/ok/0124_async_fn.txt | |||
@@ -0,0 +1,16 @@ | |||
1 | SOURCE_FILE@[0; 18) | ||
2 | FN_DEF@[0; 17) | ||
3 | ASYNC_KW@[0; 5) | ||
4 | WHITESPACE@[5; 6) | ||
5 | FN_KW@[6; 8) | ||
6 | WHITESPACE@[8; 9) | ||
7 | NAME@[9; 12) | ||
8 | IDENT@[9; 12) "foo" | ||
9 | PARAM_LIST@[12; 14) | ||
10 | L_PAREN@[12; 13) | ||
11 | R_PAREN@[13; 14) | ||
12 | WHITESPACE@[14; 15) | ||
13 | BLOCK@[15; 17) | ||
14 | L_CURLY@[15; 16) | ||
15 | R_CURLY@[16; 17) | ||
16 | WHITESPACE@[17; 18) | ||