Jeremy A. Kolb
ff1b2da502
Remove functional noop
2018-10-06 13:41:33 -04:00
Jeremy A. Kolb
828bd73195
Resolve local names first
2018-10-06 12:02:15 -04:00
Jeremy A. Kolb
1d4c767879
WIP: This doesn't currently work but I also don't think it's the right abstraction
2018-10-05 15:21:40 -04:00
Jeremy A. Kolb
91312a9ff9
Add resolve_local_name to resolve names in a function scope
2018-10-05 10:53:17 -04:00
bors[bot]
81bf190f7a
Merge #94
...
94: Extend comments by single word first r=matklad a=kjeremy
Fixes #88
Co-authored-by: Jeremy A. Kolb <jkolb@ara.com>
2018-10-04 14:25:53 +00:00
Jeremy A. Kolb
a30039ba62
Pull casts out of TextUnit
2018-10-04 09:39:02 -04:00
Jeremy A. Kolb
334d266b77
Simplify extend_single_word_in_comment
2018-10-04 09:35:55 -04:00
bors[bot]
7a025ad201
Merge #93
...
93: Support leading pipe in match arms r=matklad a=DJMcNab
This adds support for match arms of the form:
```rust
<...>
| X | Y => <...>,
| X => <...>,
| 1..2 => <...>,
etc
```
# Implementation discussion
This just naïvely 'eats' a leading pipe if one is available. The equivalent line in the reference `libsyntax` is in [`parse_arm`](441519536c/src/libsyntax/parse/parser.rs (L3552)
).
As noted in the comment linked above, this feature was formally introduced as a result of rust-lang/rfcs#1925 . This feature is in active use in the [`rust-analyzer` codebase](c87fcb4ea5/crates/ra_syntax/src/syntax_kinds/generated.rs (L231)
)
I have added some tests for this feature, but maybe more would be required
EDIT: Always looking for feedback - is this PR description over-engineered?
Co-authored-by: Daniel McNab <36049421+djmcnab@users.noreply.github.com>
2018-10-04 07:02:19 +00:00
Jeremy A. Kolb
4c2be06a7e
Extend comments by single word first
...
Fixes #88
2018-10-03 17:04:00 -04:00
Daniel McNab
a55ef9b3ed
Support leading pipe in match arms
2018-10-03 21:47:03 +01:00
Aleksey Kladov
1a2a8dec14
Make siblings an inherent method
2018-10-02 18:14:33 +03:00
Aleksey Kladov
d323c81d5c
make ancestors and descendants inherent
2018-10-02 18:02:57 +03:00
Aleksey Kladov
dccaa5e45e
use aliases
2018-10-02 17:50:56 +03:00
Aleksey Kladov
a261a1836b
Move to rowan for syntax tree impl
2018-10-02 17:09:23 +03:00
Aleksey Kladov
804e29402a
fix code actions
2018-09-29 21:59:34 +03:00
Aleksey Kladov
baaf027da0
support 2018 paths
2018-09-29 14:53:23 +03:00
bors[bot]
5e1d109cbb
Merge #81
...
81: [WIP] Reject impl keyword inside impl header r=matklad a=csmoe
Closes #77
Co-authored-by: csmoe <35686186+csmoe@users.noreply.github.com>
2018-09-26 20:14:28 +00:00
csmoe
8b710e9535
generate testsuite for impl_type
2018-09-26 16:53:16 +08:00
csmoe
edf1cc3582
parse impl type
2018-09-25 22:21:16 +08:00
Jeremy A. Kolb
4d52d004d5
Unit Tests
2018-09-24 10:48:13 -04:00
Jeremy A. Kolb
ff0a706a30
Split folding ranges into editor and lsp parts
2018-09-24 09:52:33 -04:00
csmoe
cacb32d88a
reject impl keyword in impl header
2018-09-24 11:44:43 +08:00
csmoe
e446316585
add test for impl recovery
2018-09-24 11:44:43 +08:00
Jeremy A. Kolb
bd2b2f1b48
Implement folding ranges
2018-09-23 11:19:36 -04:00
Jeremy A. Kolb
e293a16d6b
Support LSP 3.13
2018-09-23 11:10:57 -04:00
bors[bot]
f5808b21a4
Merge #75
...
75: libsyntax2 -> rust-analyzer r=matklad a=kjeremy
Change a few `libsyntax2` to `rust-analyzer`
Co-authored-by: Jeremy A. Kolb <jkolb@ara.com>
2018-09-19 10:56:31 +00:00
Aleksey Kladov
4d5cfd7229
prefer lifetimes in extend selection
2018-09-19 13:55:47 +03:00
Aleksey Kladov
d6c7030aeb
Add emacs function for extend shirnk selection
2018-09-19 00:46:10 +03:00
Jeremy A. Kolb
8845b50438
libsyntax2 -> rust-analyzer
2018-09-18 17:40:33 -04:00
Aleksey Kladov
79293d2593
eprintln
2018-09-16 17:24:18 +03:00
Aleksey Kladov
b5021411a8
rename all things
2018-09-16 13:07:39 +03:00
Aleksey Kladov
ba0bfeee12
fix derecated call
2018-09-16 03:06:56 +03:00
Aleksey Kladov
5b70e5cf0c
fix installation for windows
2018-09-16 00:02:25 +01:00
Aleksey Kladov
722706fe41
get rid of commandspeck
2018-09-16 02:12:53 +03:00
bors[bot]
3993bb4de9
Merge #67
...
67: Salsa r=matklad a=matklad
The aim of this PR is to transition from rather ad-hock FileData and ModuleMap caching strategy to something resembling a general-purpose red-green engine.
Ideally, we shouldn't recompute ModuleMap at all, unless the set of mod decls or files changes.
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2018-09-15 21:11:25 +00:00
Aleksey Kladov
fcdf3a52b4
everysalsa
2018-09-16 00:00:05 +03:00
Aleksey Kladov
e69ff21207
kill old module_map
2018-09-16 00:00:05 +03:00
Aleksey Kladov
3ebeb0db8d
move readonly source to module tree descr
2018-09-16 00:00:05 +03:00
Aleksey Kladov
58674dc3c4
ModuleTreeDescriptor
2018-09-16 00:00:05 +03:00
Aleksey Kladov
d59413c895
yet another db api
2018-09-16 00:00:05 +03:00
Aleksey Kladov
0d7b1e442d
minor
2018-09-16 00:00:05 +03:00
Aleksey Kladov
47be3a3a24
renames
2018-09-16 00:00:05 +03:00
Aleksey Kladov
8c737255ff
use salsa for new module map
2018-09-16 00:00:05 +03:00
Aleksey Kladov
60fdfec327
eager invalidation
2018-09-16 00:00:05 +03:00
Aleksey Kladov
cecc7ad5b2
be generic over data
2018-09-16 00:00:05 +03:00
Aleksey Kladov
8cf9c27196
generic salsa algo
2018-09-16 00:00:05 +03:00
Aleksey Kladov
0e493160c0
store params in the graph
2018-09-16 00:00:05 +03:00
Aleksey Kladov
907d44a751
any-cache
2018-09-16 00:00:05 +03:00
Aleksey Kladov
dbdf72e2e2
fix dep tracking
2018-09-16 00:00:05 +03:00
Aleksey Kladov
c81d0d51bf
add deps tracking
2018-09-16 00:00:05 +03:00