Aleksey Kladov
fa049d94d1
add top-level tests for expressions
2022-01-02 17:52:05 +03:00
Aleksey Kladov
640cc27ff0
add top level tests for types
2022-01-02 17:45:18 +03:00
Aleksey Kladov
e78424846e
enforce parsing invariant for patterns
2022-01-02 17:32:15 +03:00
Aleksey Kladov
b5369927d7
parse empty statemet as statemetn
2021-12-29 20:04:36 +03:00
Aleksey Kladov
f5cfc0504e
rename
2021-12-29 19:18:34 +03:00
Aleksey Kladov
8234a85d15
compress
2021-12-29 18:51:05 +03:00
Aleksey Kladov
660cf34d8c
dead code
2021-12-28 19:13:30 +03:00
Aleksey Kladov
afffa096f6
add TopEntryPoint
2021-12-28 17:00:55 +03:00
Aleksey Kladov
8e7fc7be65
simplify
2021-12-28 17:00:55 +03:00
Aleksey Kladov
369001615f
move path
2021-12-28 17:00:55 +03:00
Aleksey Kladov
c5d8a9b341
move expr
2021-12-28 17:00:55 +03:00
Aleksey Kladov
04ae18de29
move ty
2021-12-28 17:00:55 +03:00
Aleksey Kladov
5636bef2ec
move pat to prefix entry points
2021-12-28 17:00:55 +03:00
Aleksey Kladov
f10f51833c
move stmt to entry points
2021-12-28 17:00:55 +03:00
Aleksey Kladov
519ee21bcb
internal: move block to prefix entry point
2021-12-28 17:00:55 +03:00
Aleksey Kladov
350d5dc152
internal: move visibility to a prefix entry point
2021-12-28 17:00:55 +03:00
Aleksey Kladov
abc658aad0
internal: add prefix entry points
2021-12-28 17:00:55 +03:00
Adam Bratschi-Kaye
0d54754ca7
Handle pub tuple fields in tuple structs
...
The current implementation will throw a parser error for tuple structs
that contain a pub tuple field. For example,
```rust
struct Foo(pub (u32, u32));
```
is valid Rust, but rust-analyzer will throw a parser error. This is
because the parens after `pub` is treated as a visibility context.
Allowing a tuple type to follow `pub` in the special case when we are
defining fields in a tuple struct can fix the issue.
2021-11-10 21:29:50 +01:00
Aramis Razzaghipour
eff195852d
Fix miscellaneous Clippy lints
2021-10-03 23:53:30 +11:00
Aramis Razzaghipour
55c0b86cde
Add semicolons for consistency
...
`clippy::semicolon_if_nothing_returned`
2021-10-03 23:39:43 +11:00
Aleksey Kladov
56964c9bd3
feat: allow attributes on all expressions
...
Attrs are syntactically valid on any expression, even if they are not
allowed semantically everywhere yet.
2021-09-25 22:19:27 +03:00
Aleksey Kladov
ed84717869
internal: better naming
2021-09-18 15:55:07 +03:00
Aleksey Kladov
ec2043a082
minor: parser cleanup
2021-09-18 00:14:20 +03:00
Aleksey Kladov
4d2956e775
minor: simplify
2021-09-17 23:31:37 +03:00
Aleksey Kladov
366d3d7544
minor: cleanup
2021-09-17 23:27:26 +03:00
Aleksey Kladov
940b3afd00
internal: fix bugs in tests by simplifying code
2021-09-13 13:29:27 +03:00
Aleksey Kladov
682fbbbd5a
minor: modernize
2021-09-06 18:54:16 +03:00
Aleksey Kladov
104cd0ce88
internal: make name consistent with usage
2021-09-06 18:34:03 +03:00
Jade
e3a67ccec6
tree-wide: fix rustdoc warnings, add some links
2021-08-03 21:34:20 -07:00
Lukas Wirth
f6cb42fdb8
Restrict completions inside visibility modifiers
2021-07-20 18:37:52 +02:00
Aleksey Kladov
dc1577d58d
Add even more docs
2021-05-22 17:20:22 +03:00
Edwin Cheng
c4173bb468
Handle extended key value attr in mbe
2021-04-17 14:31:52 +08:00
Edwin Cheng
8e07b23b84
Fix macro expansion for statements w/o semicolon
2021-03-16 13:44:50 +08:00
Lukas Wirth
ebf4448f78
Fix remaining references to cargo xtask codegen
2021-03-12 15:10:33 +01:00
Edwin Cheng
20eda09712
Fix fail to parse :: for meta in mbe
2021-03-06 04:57:34 +08:00
Lukas Wirth
98718e0544
Wrap remaining self/super/crate in Name{Ref}
2021-01-15 22:18:43 +01:00
Marijn Suijten
42da26e959
parser,syntax: Add separate parser for stmt with optional semicolon
...
Adjusting `grammar::fragments::stmt` to Optional or Yes will break
original functionality and tests.
2021-01-03 12:05:52 +01:00
Edwin Cheng
710407b11d
Fix mbe fail to pass expr with attr
2020-12-28 19:53:00 +08:00
Edwin Cheng
f942d10e80
Use pattern_single instead of pattern in mbe pat
2020-12-20 17:13:40 +08:00
Jonas Schievink
08de1b4fa5
Implement RawAttr::filter
2020-12-18 18:58:42 +01:00
Lukas Wirth
dd496223f5
Node-ify lifetimes
2020-12-16 14:16:09 +01:00
Aleksey Kladov
5ba4f949c2
Kill RAW_ literals
...
Syntactically, they are indistinguishable from non-raw versions, so it
doesn't make sense to separate then *at the syntax* level.
2020-11-06 22:23:14 +01:00
Arif Roktim
0a9ff04270
Don't interpret type path as part of visibility.
2020-10-24 02:20:45 -04:00
Aleksey Kladov
6bc2633c90
Align parser names with grammar
2020-08-13 17:59:27 +02:00
Aleksey Kladov
a1c187eef3
Rename ra_syntax -> syntax
2020-08-12 18:30:53 +02:00
Aleksey Kladov
50a02eb359
Rename ra_parser -> parser
2020-08-12 17:14:23 +02:00