Aramis Razzaghipour
55c0b86cde
Add semicolons for consistency
...
`clippy::semicolon_if_nothing_returned`
2021-10-03 23:39:43 +11:00
Aleksey Kladov
2bf81922f7
internal: more reasonable grammar for blocks
...
Consider these expples
{ 92 }
async { 92 }
'a: { 92 }
#[a] { 92 }
Previously the tree for them were
BLOCK_EXPR
{ ... }
EFFECT_EXPR
async
BLOCK_EXPR
{ ... }
EFFECT_EXPR
'a:
BLOCK_EXPR
{ ... }
BLOCK_EXPR
#[a]
{ ... }
As you see, it gets progressively worse :) The last two items are
especially odd. The last one even violates the balanced curleys
invariant we have (#10357 ) The new approach is to say that the stuff in
`{}` is stmt_list, and the block is stmt_list + optional modifiers
BLOCK_EXPR
STMT_LIST
{ ... }
BLOCK_EXPR
async
STMT_LIST
{ ... }
BLOCK_EXPR
'a:
STMT_LIST
{ ... }
BLOCK_EXPR
#[a]
STMT_LIST
{ ... }
2021-09-26 19:16:09 +03:00
Lukas Wirth
2579dc6d82
Update inline_call
assist doc example
2021-07-05 14:24:25 +02:00
bors[bot]
2bc4f9e371
Merge #9474
...
9474: fix: Inline parameters in `inline_call` if possible r=Veykril a=Veykril
Fixes #9491
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-07-05 11:50:18 +00:00
Lukas Wirth
ea02d27a1e
Fixup emitted whitespace in most cases
2021-07-05 13:44:42 +02:00
Aleksey Kladov
c4d2671767
minor: untangle complex condition
2021-07-04 17:32:59 +03:00
Aleksey Kladov
47d7434dde
internal: replace AstTransformer with mutable syntax trees
2021-05-22 15:27:32 +03:00
Aleksey Kladov
1fdc9d8e9e
internal: remove one more syntax rewriter
2021-05-08 14:47:14 +03:00
Lukas Wirth
fa20a5064b
Remove SyntaxRewriter usage in insert_use in favor of ted
2021-04-20 02:09:12 +02:00
Dawer
144afa55a6
Switch introduce_named_lifetime assist to use mutable syntax tree
2021-04-15 01:56:19 +05:00
Aleksey Kladov
9cbf09ec4f
rewrite merge use trees assist to use muatable syntax trees
...
changelog internal
2021-03-22 20:47:46 +03:00
Aleksey Kladov
a61691026a
Make ast editing more ergonomic
...
changelog internal
2021-03-19 20:53:23 +03:00
Matthias Krüger
966c23f529
avoid converting types into themselves via .into() (clippy::useless-conversion)
...
example: let x: String = String::from("hello world").into();
2021-03-17 01:27:56 +01:00
Aleksey Kladov
186a430853
pit-of-successify tree editor
2021-03-16 22:59:57 +03:00
Aleksey Kladov
34555593ca
Auto-magical whitespace
2021-03-16 22:51:37 +03:00
Aleksey Kladov
f5a81ec468
Upgrade rowan
...
Notably, new rowan comes with support for mutable syntax trees.
2021-03-16 16:10:49 +03:00