diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2019-09-09 09:45:00 +0100 |
---|---|---|
committer | GitHub <[email protected]> | 2019-09-09 09:45:00 +0100 |
commit | 734a43e95afc97773c234956a95b78caed88f2a3 (patch) | |
tree | e7fd1ed3cd7cf00f36541c33c84ce4a2ac6559e5 /crates/ra_syntax/test_data/parser | |
parent | 1db08a54c20c244718e2378272c72ae5c6651f06 (diff) | |
parent | f3cbdb07c56fcfab1d65488836caafc1f395a0d1 (diff) |
Merge #1793
1793: Fix outer doc-comments of `macro_rules` r=matklad a=uHOOCCOOHu
Document comments of `macro_rules!` is currently parsed outside the `MACRO_CALL` node,
which makes `DocCommentsOwner::doc_comments()` always empty.
For the input:
```rust
/// Some docs
macro_rules! foo {
() => {};
}
```
Current parsing tree is:
```
SOURCE_FILE
COMMENT // <- This should be children of MACRO_CALL
WHITESPACE
MACRO_CALL
PATH
<...omitted...>
```
It should be:
```
SOURCE_FILE
MACRO_CALL
COMMENT
WHITESPACE
PATH
<...omitted...>
```
Co-authored-by: uHOOCCOOHu <[email protected]>
Diffstat (limited to 'crates/ra_syntax/test_data/parser')
-rw-r--r-- | crates/ra_syntax/test_data/parser/ok/0053_outer_attribute_on_macro_rules.rs | 5 | ||||
-rw-r--r-- | crates/ra_syntax/test_data/parser/ok/0053_outer_attribute_on_macro_rules.txt | 37 |
2 files changed, 42 insertions, 0 deletions
diff --git a/crates/ra_syntax/test_data/parser/ok/0053_outer_attribute_on_macro_rules.rs b/crates/ra_syntax/test_data/parser/ok/0053_outer_attribute_on_macro_rules.rs new file mode 100644 index 000000000..b59c23c56 --- /dev/null +++ b/crates/ra_syntax/test_data/parser/ok/0053_outer_attribute_on_macro_rules.rs | |||
@@ -0,0 +1,5 @@ | |||
1 | /// Some docs | ||
2 | #[macro_export] | ||
3 | macro_rules! foo { | ||
4 | () => {}; | ||
5 | } | ||
diff --git a/crates/ra_syntax/test_data/parser/ok/0053_outer_attribute_on_macro_rules.txt b/crates/ra_syntax/test_data/parser/ok/0053_outer_attribute_on_macro_rules.txt new file mode 100644 index 000000000..f77221f76 --- /dev/null +++ b/crates/ra_syntax/test_data/parser/ok/0053_outer_attribute_on_macro_rules.txt | |||
@@ -0,0 +1,37 @@ | |||
1 | SOURCE_FILE@[0; 65) | ||
2 | MACRO_CALL@[0; 64) | ||
3 | COMMENT@[0; 13) "/// Some docs" | ||
4 | WHITESPACE@[13; 14) "\n" | ||
5 | ATTR@[14; 29) | ||
6 | POUND@[14; 15) "#" | ||
7 | TOKEN_TREE@[15; 29) | ||
8 | L_BRACK@[15; 16) "[" | ||
9 | IDENT@[16; 28) "macro_export" | ||
10 | R_BRACK@[28; 29) "]" | ||
11 | WHITESPACE@[29; 30) "\n" | ||
12 | PATH@[30; 41) | ||
13 | PATH_SEGMENT@[30; 41) | ||
14 | NAME_REF@[30; 41) | ||
15 | IDENT@[30; 41) "macro_rules" | ||
16 | EXCL@[41; 42) "!" | ||
17 | WHITESPACE@[42; 43) " " | ||
18 | NAME@[43; 46) | ||
19 | IDENT@[43; 46) "foo" | ||
20 | WHITESPACE@[46; 47) " " | ||
21 | TOKEN_TREE@[47; 64) | ||
22 | L_CURLY@[47; 48) "{" | ||
23 | WHITESPACE@[48; 53) "\n " | ||
24 | TOKEN_TREE@[53; 55) | ||
25 | L_PAREN@[53; 54) "(" | ||
26 | R_PAREN@[54; 55) ")" | ||
27 | WHITESPACE@[55; 56) " " | ||
28 | EQ@[56; 57) "=" | ||
29 | R_ANGLE@[57; 58) ">" | ||
30 | WHITESPACE@[58; 59) " " | ||
31 | TOKEN_TREE@[59; 61) | ||
32 | L_CURLY@[59; 60) "{" | ||
33 | R_CURLY@[60; 61) "}" | ||
34 | SEMI@[61; 62) ";" | ||
35 | WHITESPACE@[62; 63) "\n" | ||
36 | R_CURLY@[63; 64) "}" | ||
37 | WHITESPACE@[64; 65) "\n" | ||