Aleksey Kladov
74d827bb80
Rename MockDatabase -> TestDB
...
Actually working rename is sooo useful!
2019-11-04 22:21:15 +03:00
Edwin Cheng
2a76bb5a0b
Refactor a bit
2019-11-05 03:20:54 +08:00
Aleksey Kladov
7649a8ebbe
remove dead code
2019-11-04 22:19:06 +03:00
Aleksey Kladov
24894aca31
Remove more duplication in test fixtures
2019-11-04 22:12:49 +03:00
Aleksey Kladov
dcdcc9e4c8
Remove some duplicated test functions
2019-11-04 22:04:51 +03:00
Aleksey Kladov
d04ecc8419
Reduce visibility
2019-11-04 21:42:25 +03:00
Edwin Cheng
604bdc6ffe
Use macro_rules shift to map text ranges
2019-11-05 02:09:16 +08:00
Edwin Cheng
7e28924012
Use ? and destructing to simplifed long code
2019-11-05 01:38:20 +08:00
Edwin Cheng
e6709f64af
Rename and fix typos
2019-11-05 01:38:20 +08:00
Edwin Cheng
d8b7ba201e
Add note for recurseive macro generated code
2019-11-05 01:38:20 +08:00
Edwin Cheng
1630a34c3f
Add tests
2019-11-05 01:38:20 +08:00
Edwin Cheng
e8741b9d75
Use new expansion feature in goto_definition
2019-11-05 01:38:20 +08:00
Edwin Cheng
67226ebc82
Remove dbg!
2019-11-05 01:38:20 +08:00
Edwin Cheng
d560219d06
Fixed bug in ExpandedRangeMap
2019-11-05 01:38:20 +08:00
Edwin Cheng
ae609d7953
Add parent_expansion to HirFileId
2019-11-05 01:38:20 +08:00
Edwin Cheng
159da285e9
Add macro_expansion_info in hir_expand
2019-11-05 01:38:20 +08:00
Edwin Cheng
9fd546bec2
Add map_id to TokenId
2019-11-05 01:38:20 +08:00
bors[bot]
d9fb01f803
Merge #2173
...
2173: MBE: Add TokenId shift in macro_rules r=matklad a=edwin0cheng
As discussed in #2169 , for fixing duplication TokenId during expansion :
> What we can do here is to re-number the tokens during expansion. Specifically:
> * when we create macro_rules, we note the highest id of the token we have as shift>
> * when we expand macro rules, if we need to output a token from definition, we just re-use its id
> * if we need to output a token from the argument, we increase its id by shift (so it's guaranteed to not to collide with anything from the definition)
> * finally, when we have a HirFileId of the expansion, we can look up the original value of shift and classify node to the arg/def by comparing it's id with shift.
>
This PR implement first 3 points of above solution.
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2019-11-04 17:21:41 +00:00
Edwin Cheng
a5839662f4
Change to add 1 if non zero shift
2019-11-05 01:16:06 +08:00
Edwin Cheng
188a1412b9
Refactor and rename
2019-11-05 01:01:05 +08:00
Edwin Cheng
42661a3b27
Change Option<u32> to u32 for shift value
2019-11-05 00:33:19 +08:00
Edwin Cheng
63e42bb5bd
Change to better naming
2019-11-05 00:16:03 +08:00
Edwin Cheng
04af290d4e
Add TokenId Shif in macro_rules
2019-11-04 23:22:18 +08:00
bors[bot]
cc2d75d0f8
Merge #2172
...
2172: Use new text DSL instead of crate_graph! macro r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-11-04 10:30:09 +00:00
Aleksey Kladov
38b941db13
Cleanup unused marks
2019-11-04 13:29:07 +03:00
Aleksey Kladov
dfdb6321ac
Use new text DSL instead of crate_graph! macro
2019-11-04 13:25:42 +03:00
bors[bot]
fe6ba12a77
Merge #2149
...
2149: Handle IfLet in convert_to_guarded_return. r=matklad a=krk
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/2124
I could not move the cursor position out of `let`:
`le<|>t` vs `let<|>`.
Also, please suggest extra test cases.
Co-authored-by: krk <keremkat@gmail.com>
2019-11-04 09:06:53 +00:00
Aleksey Kladov
3603d02134
Reexport relative_path from ra_db
2019-11-04 01:14:17 +03:00
Aleksey Kladov
8922a44395
Add small module-level docs
2019-11-04 00:23:14 +03:00
Aleksey Kladov
f0eb9cc6e6
Remove last traces of nameres from hir
2019-11-03 23:49:44 +03:00
Aleksey Kladov
73fcf9a2d6
Restore crate_def_map marks
2019-11-03 23:44:23 +03:00
Aleksey Kladov
6fba51c5fc
move crate_def_map tests to hir_def
2019-11-03 23:35:48 +03:00
Aleksey Kladov
0933d914a3
Introduce ra_db::fixture fixture module
...
The goal here is to share more testing infrastructure between crates.
2019-11-03 20:55:20 +03:00
Aleksey Kladov
ba2efca2bb
Move CrateDefMap to hir_def
2019-11-03 18:04:06 +03:00
bors[bot]
f9f1effd01
Merge #2160
...
2160: Set `deprecated` field on `CompletionItem`s r=matklad a=martskins
This PR aims to address #2042 by setting the deprecated field for completion items.
The setting the tags field for LSP 3.15 part still needs fixing, but that one is blocked due to lsp-types not being up to date with 3.15 yet.
Co-authored-by: Martin Asquino <martin.asquino@gmail.com>
2019-11-03 14:41:30 +00:00
Martin Asquino
ccf8817d18
Use bool
instead of Option<bool>
and print it's value only when true
2019-11-02 19:33:34 -03:00
Laurențiu Nicola
c7b7d7e666
Silence some warnings
2019-11-03 00:19:08 +02:00
Aleksey Kladov
13735d91a7
Move diagnostics to hir_expand
2019-11-02 23:42:38 +03:00
Martin Asquino
dc3848a6a3
Set deprecated
field on CompletionItem
s
2019-11-02 17:37:47 -03:00
Aleksey Kladov
b8533413cf
Move Source to hir_expand
2019-11-02 23:11:27 +03:00
Florian Diebold
c5e44b2084
Upgrade Chalk
2019-11-02 15:32:08 +01:00
Florian Diebold
8952380884
Change SourceAnalyzer method resoltion API
2019-11-01 20:01:21 +01:00
Florian Diebold
b29092ade3
Various review fixes
2019-11-01 19:57:08 +01:00
Florian Diebold
dc4066ebed
Add some doc comments
2019-11-01 19:57:08 +01:00
Florian Diebold
77c26c2bf1
Complete items on traits as well
2019-11-01 19:57:08 +01:00
Florian Diebold
79cb0a0dab
Complete trait assoc items
2019-11-01 19:57:08 +01:00
Florian Diebold
5da941897d
Add failing tests for trait assoc method completion
2019-11-01 19:57:08 +01:00
Florian Diebold
b0bf1deb7c
Refactor a bit
2019-11-01 19:57:08 +01:00
Florian Diebold
f4181deb0d
Don't do autoderef for path resolution
2019-11-01 19:57:08 +01:00
Florian Diebold
1173c3dab5
Refactor to unify with method resolution
2019-11-01 19:57:08 +01:00
Florian Diebold
c7cedea270
Record assoc item resolution
2019-11-01 19:57:08 +01:00
Florian Diebold
7b7133ec58
Insert type vars before doing assoc item resolution
2019-11-01 19:57:08 +01:00
Florian Diebold
44279ef1df
Add another unrelated, currently not working test
2019-11-01 19:57:08 +01:00
Florian Diebold
b634ba41e0
Get trait assoc item resolution mostly working
2019-11-01 19:57:08 +01:00
krk
bc14f500a0
Extract common parts of match arms in convert_to_guarded_return assist.
2019-11-01 18:34:42 +01:00
krk
91ab3f8760
Support paths other than "Some".
2019-11-01 18:18:58 +01:00
krk
1841a39f86
Remove variable pat.
2019-11-01 16:58:09 +01:00
bors[bot]
ed5212e1ac
Merge #2150
...
2150: Attach docs to statics r=matklad a=kjeremy
Co-authored-by: kjeremy <kjeremy@gmail.com>
2019-11-01 14:19:47 +00:00
kjeremy
dcc0a9cd7e
Attach docs to statics
2019-10-31 16:21:46 -04:00
krk
4a4d9f7a90
Handle IfLet in convert_to_guarded_return.
2019-10-31 21:10:58 +01:00
kjeremy
c46be83a34
Fixes #2143
2019-10-31 13:29:56 -04:00
Aleksey Kladov
09f9733ca6
move struct & enum data to hir_def
2019-10-31 16:40:36 +03:00
Aleksey Kladov
1602db7d7d
add ModuleDefId to hir_def
2019-10-31 11:23:30 +03:00
Aleksey Kladov
b20d37cb49
move builtin types to hir_def
2019-10-31 10:51:54 +03:00
Aleksey Kladov
6f4d5f7339
move mod_resolution to hir_def
2019-10-31 10:31:29 +03:00
kjeremy
4ad37df223
runnables => match_ast!
2019-10-30 16:09:16 -04:00
kjeremy
78f93c8033
traits => match_ast!
2019-10-30 16:08:59 -04:00
kjeremy
b205a0ced3
source_binder => match_ast!
2019-10-30 16:08:27 -04:00
kjeremy
4d17658940
Use match_ast! in FnCallNode::with_node
2019-10-30 14:39:05 -04:00
kjeremy
7ad55e976c
Document match_ast!
2019-10-30 14:38:45 -04:00
bors[bot]
eee55d4663
Merge #2129
...
2129: Some clippy fixes r=kjeremy a=kjeremy
Co-authored-by: kjeremy <kjeremy@gmail.com>
2019-10-30 17:39:18 +00:00
kjeremy
b441b4e8ef
Some clippy fixes
2019-10-30 13:36:37 -04:00
Aleksey Kladov
cf4f7eb566
improve compile time a bit
2019-10-30 19:15:41 +03:00
Aleksey Kladov
ab559f170e
move hygiene to hir_expand
2019-10-30 19:10:53 +03:00
Aleksey Kladov
872ac566bf
push name down to hir_expand
2019-10-30 18:56:20 +03:00
Aleksey Kladov
b05d6e53fb
push either to hir_expand
2019-10-30 18:50:10 +03:00
Aleksey Kladov
0bc7d28518
refactor $crate handling
...
Introduce proper hygiene module, which should grow quite a bit
eventually.
2019-10-30 18:41:50 +03:00
Aleksey Kladov
e34e71c62d
remove forward pointer for attrs
2019-10-30 18:06:08 +03:00
Aleksey Kladov
c1ed9ccc4e
fix compilation
2019-10-30 18:04:24 +03:00
Aleksey Kladov
e5300ad3ba
remove forward pointer for type_ref
2019-10-30 17:43:14 +03:00
Aleksey Kladov
e564334320
remove forward pointer to Path
2019-10-30 17:43:14 +03:00
Aleksey Kladov
f8ddef875a
remove forward pointer for name
2019-10-30 17:43:14 +03:00
Aleksey Kladov
16e620c052
move raw_items to hir_def
2019-10-30 17:43:11 +03:00
Aleksey Kladov
c9cd6aa370
Move ids to hir_def crate
2019-10-30 13:11:38 +03:00
Aleksey Kladov
a136cc0653
introduce ra_hir_def
2019-10-30 12:27:54 +03:00
Aleksey Kladov
56bc874f1d
move ty interning to ty
2019-10-30 11:18:38 +03:00
bors[bot]
8046f5b24a
Merge #2125
...
2125: don't add macro braces in use items r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-30 07:40:23 +00:00
Aleksey Kladov
d7a7da8261
don't add macro braces in use items
2019-10-30 10:39:12 +03:00
kjeremy
3c140050ff
Profile all request handlers
2019-10-29 16:08:36 -04:00
kjeremy
4ca5d4c353
Add missing test for label
2019-10-29 15:25:31 -04:00
Florian Diebold
47cfdb4aa3
Don't add a space after the opening brace in autoimport
2019-10-29 18:14:15 +01:00
kjeremy
eb220a081b
Primitive signature help for mbe
2019-10-29 12:16:55 -04:00
bors[bot]
de16f94ada
Merge #2103
...
2103: Expand signature help r=matklad a=kjeremy
Signature help using call syntax with tuple structs and enum variants
Fixes #2102 .
Co-authored-by: Jeremy Kolb <kjeremy@gmail.com>
Co-authored-by: kjeremy <kjeremy@gmail.com>
2019-10-29 13:48:26 +00:00
kjeremy
b915bf2d05
SigKind -> CallableKind
2019-10-29 09:46:55 -04:00
bors[bot]
e38cdf6e56
Merge #2114
...
2114: Move macro expansion to a separate crate r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-29 13:19:45 +00:00
Aleksey Kladov
bca708ba4c
cleanup
2019-10-29 16:19:08 +03:00
Aleksey Kladov
99b6ecfab0
switch expand to dyn Trait
2019-10-29 16:12:54 +03:00
Aleksey Kladov
3260639608
reduce visibility
2019-10-29 16:08:06 +03:00
Aleksey Kladov
1ec418c3b8
add doc comment
2019-10-29 16:03:29 +03:00
Aleksey Kladov
7de6eaa58a
remove not that useful indirection
2019-10-29 16:01:14 +03:00
Aleksey Kladov
b8b7969bfb
remove empty module
2019-10-29 15:53:25 +03:00
Aleksey Kladov
2a5254c106
reduce visibility
2019-10-29 15:25:46 +03:00
Aleksey Kladov
d095d9273e
remove unused query
2019-10-29 15:22:20 +03:00
Aleksey Kladov
858dd48af2
less generics
2019-10-29 15:20:08 +03:00
Aleksey Kladov
6bf7faf315
flatten hir_expand
2019-10-29 15:11:42 +03:00
Aleksey Kladov
dba767802d
make file id repr private again
2019-10-29 15:01:55 +03:00
Florian Diebold
632a22ae62
Upgrade Chalk, make use of TypeName::Error variant
2019-10-29 13:01:33 +01:00
Aleksey Kladov
5b803055b7
rename hir_def -> hir_expand
2019-10-29 14:59:55 +03:00
Aleksey Kladov
5413875644
move expansion-related code to a separate crate
2019-10-29 14:55:39 +03:00
Aleksey Kladov
77f90caf2d
start ra_hir_def crate
2019-10-29 11:15:51 +03:00
bors[bot]
120000609a
Merge #2111
...
2111: Fix autoimport not choosing the deepest use tree in some situations r=matklad a=flodiebold
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2019-10-28 19:32:52 +00:00
Florian Diebold
6d1b4ffa2e
Fix autoimport not choosing the deepest use tree in some situations
2019-10-28 19:08:56 +01:00
Aleksey Kladov
54d3e47318
weaken requirements of AstDef
2019-10-28 20:29:57 +03:00
kjeremy
01238a6fd7
Filter out non callable versions of Struct/EnumVariant
2019-10-28 10:48:40 -04:00
Jeremy Kolb
ddf25e9481
formatting
2019-10-28 08:42:17 -04:00
Aleksey Kladov
5a6db3ca29
fix parsing of for loops inside expressions
...
closes #2051
2019-10-28 15:41:34 +03:00
Jeremy Kolb
44f2805fee
Fix syntax
2019-10-28 08:32:23 -04:00
Jeremy Kolb
49e89772f6
Preliminary enum variant support
2019-10-28 08:32:22 -04:00
Jeremy Kolb
55d4b06a53
Add disciminant
2019-10-28 08:32:22 -04:00
Jeremy Kolb
5a59bc9fcb
WIP: Expand signature help
...
This is hacky but works for tuple structs. Proof of concept.
2019-10-28 08:32:22 -04:00
bors[bot]
02828520a7
Merge #2097
...
2097: Be more precise with function signatures r=matklad a=kjeremy
Finds the closest call expr.
Fixes #2093
Co-authored-by: Jeremy Kolb <kjeremy@gmail.com>
2019-10-28 11:53:16 +00:00
Jeremy Kolb
1438f38eb6
Preserve whitespace at the end of doc comments
...
Whitespace can have special meaning in markdown. For instance
ending a line with three spaces will render a new line.
Note that this behavior diverges from RLS.
Fixes #1997
2019-10-27 16:56:25 -04:00
bors[bot]
46b63c462d
Merge #2099
...
2099: Fix panic on raw string assist r=matklad a=aee11
Strings that do not contain two quotation marks would cause a slice indexing panic because `find_usual_string_range` would return a range that only contained a single quotation mark.
Panic example:
```
fn main() {
let s = "<|>
}
```
I noticed a lot of panics from the `make_raw_string` assist while working on another issue today.
Co-authored-by: Alexander Elís Ebenesersson <alex2789@gmail.com>
2019-10-27 19:20:01 +00:00
Alexander Elís Ebenesersson
17bd3e59f8
Fix panic on raw string assist
...
Strings that do not contain two quotation marks
would cause a slice indexing panic because code
was assuming `find_usual_string_range` would return
a string with two quotes, but it would incorrectly
also return text ranges containing only a single quote.
2019-10-28 03:00:28 +09:00
Jeremy Kolb
a0d55edc38
Be more precise with function signatures
...
Fixes #2093
2019-10-27 12:26:44 -04:00
Aleksey Kladov
ad3fe316c6
further simplify assists
2019-10-27 18:22:14 +03:00
Aleksey Kladov
b6fcacd96d
move all assists to use generated docs
2019-10-27 17:49:39 +03:00
Aleksey Kladov
cda6355de2
simplify AssistCtx API
...
We never actually use ability to create multiple actions out of a
single context
2019-10-27 17:35:37 +03:00
Aleksey Kladov
9e638c9f3e
simplify
2019-10-27 17:27:05 +03:00
bors[bot]
ad950830d0
Merge #2090
...
2090: move public stuff to top r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-27 14:13:09 +00:00
Aleksey Kladov
85c64ec7be
use new api for flip_trait_bound assist
2019-10-27 17:02:43 +03:00
Wesley Norris
fc2fc8528b
Add tests for the trait bound flip assist.
...
Co-authored-by: vlthr <vlthr@users.noreply.github.com>
2019-10-27 16:52:33 +03:00
Wesley Norris
3a64a85a52
Fixes #2054 .
...
This adds the `flip_trait_bound` assist which allows for the swapping of two trait bounds in a trait list that are next to each other.
2019-10-27 16:52:33 +03:00
Aleksey Kladov
be0f48f7cf
move public stuff to top
2019-10-27 16:48:20 +03:00
Aleksey Kladov
73532e900e
rename auto_import -> add_import
...
We are long way from auto imports at the moment
2019-10-27 16:46:49 +03:00
Alexander Elís Ebenesersson
3e7e3fdf16
extend selection in trait bound extends to plus
...
When multiple traits bounds are present, expanded selection
from a single trait bound will include the nearest plus sign
(and whitespace after) before including the whole trait bound.
2019-10-27 21:29:06 +09:00
Aleksey Kladov
8464c45086
remove relative_path_buf workaround
...
The upstream problem was fixed with the change to 1.0
2019-10-27 12:36:40 +03:00
Aleksey Kladov
da5528824a
document almost all assists
2019-10-27 12:23:22 +03:00
Aleksey Kladov
860bbd56ef
lightly document assist_ctx module
2019-10-27 12:04:06 +03:00
Aleksey Kladov
8118dc1bb9
use more consistent naming
...
I think this is the first time I use global rename for rust-analyzer
itself :-)
2019-10-27 11:53:09 +03:00
Aleksey Kladov
61349a3d18
extract assist helper for getting a specific token
2019-10-27 11:53:01 +03:00
Aleksey Kladov
3840324429
raw string assists work in macros
2019-10-27 11:49:13 +03:00
Aleksey Kladov
a490ba06fa
document some more assists
2019-10-27 11:26:46 +03:00
Aleksey Kladov
cf4720ffd5
use unicode bar for drawing the cursor
2019-10-26 21:22:40 +03:00
Aleksey Kladov
4a83aae098
support range selection in assist docs
2019-10-26 20:57:23 +03:00
Aleksey Kladov
431e4ff4ef
avoid TextEditorBuilder for simple edits
2019-10-26 20:09:56 +03:00
Aleksey Kladov
a5cbd8d5e8
check style for assist docs
2019-10-26 19:08:13 +03:00
Aleksey Kladov
4ef9b8d17a
use correct spacing for enum pattern
2019-10-26 18:03:55 +03:00
Aleksey Kladov
3126152a84
document a couple of assists
2019-10-26 17:37:55 +03:00
Aleksey Kladov
394e474479
add blank lines for readability
2019-10-26 17:27:47 +03:00
Florian Diebold
b342ee5616
Upgrade Chalk (without using its dyn/impl Trait support)
2019-10-26 15:11:39 +02:00
Aleksey Kladov
d385438bcc
generate more assists docs
2019-10-25 23:38:15 +03:00
bors[bot]
c48b467eff
Merge #2069
...
2069: auto-generate assists docs and tests r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-25 11:50:06 +00:00
Aleksey Kladov
0dd35ff2b2
auto-generate assists docs and tests
2019-10-25 14:47:48 +03:00
bors[bot]
5f779f6c46
Merge #2066
...
2066: insert space after `->` r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-25 11:24:43 +00:00
Laurențiu Nicola
27a0cb3025
Specify working chalk revisions in manifest
2019-10-25 13:33:14 +03:00
Aleksey Kladov
d5cd8b5be2
disable the new typing handler for ->
...
It doesn't actually work with LSP
2019-10-25 13:03:57 +03:00
Aleksey Kladov
53e3bee0cf
insert space after ->
2019-10-25 12:41:34 +03:00
Aleksey Kladov
ea948e9fbb
refactor typing_handlers
2019-10-25 12:04:17 +03:00
Aleksey Kladov
6f00bb1cb0
introduce SingleFileChange
2019-10-25 11:49:38 +03:00
Aleksey Kladov
b112430ca7
move source change to a dedicated file
2019-10-25 11:30:50 +03:00
Aleksey Kladov
8d2fd59cfb
make typing infra slightly more extensible
2019-10-25 11:30:46 +03:00
Aleksey Kladov
dc65219ae1
document feature flags
2019-10-25 09:00:30 +03:00
kjeremy
64c1dd10b8
bump insta
2019-10-24 10:35:22 -04:00
bors[bot]
95cf5c86fa
Merge #2059
...
2059: for highlighting, search only the current file r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-24 11:17:03 +00:00
Aleksey Kladov
4529da906d
for highlighting, search only the current file
2019-10-24 14:16:36 +03:00
Aleksey Kladov
6d186ec3be
add search scope stuct
2019-10-24 13:41:25 +03:00
Aleksey Kladov
5750ee69ff
add --with-deps option to analysis-stats
2019-10-24 12:32:19 +03:00
Aleksey Kladov
ac1b7b07e7
add some profiling calls
2019-10-24 10:37:20 +03:00
Aleksey Kladov
418fbc8662
don't die if a sync task panics
2019-10-24 09:56:30 +03:00
Aleksey Kladov
baa968e71c
show unaccounted for time in profiling
2019-10-24 09:14:33 +03:00
Aleksey Kladov
b5f13d8d51
xtask: move codegen to a module
2019-10-23 18:57:18 +03:00
bors[bot]
edf4d8e555
Merge #2049
...
2049: add couple of profiling calls r=matklad a=matklad
bors r+
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-23 15:44:40 +00:00
Aleksey Kladov
f5bf7f29b5
add couple of profiling calls
2019-10-23 18:26:43 +03:00
Aleksey Kladov
afc6ee251d
minor cleanup
2019-10-23 17:41:15 +03:00
Aleksey Kladov
68ea9bd1bf
restore assert
2019-10-23 11:31:16 +03:00
Ekaterina Babshukova
decfd28bd1
some fixes, add docs
2019-10-23 00:35:06 +03:00
Ekaterina Babshukova
b5a3ee93e2
support items that visible to the parent module
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
55e1910d00
classify module from declaration
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
93c179531b
fix highlighting
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
328be5721a
remove SearchScope
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
88ff88d318
use Lazy, some fixes
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
19fbf2c16b
remove unreachable!()
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
835173d065
replace trait by a bunch of functions
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
d26d0ada50
restructure a bit
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
0dd08b8023
classify definition of a function right
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
79e6b3b0d1
make handle_references
accept refs from other files
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
df8441b24e
some fixes, add tests
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
5b03773fbe
implement search of references
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
01853e8d6c
find scope for Declaration
item
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
121aa35f12
return Declaration from classify_name_ref
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
83f780eabf
return Declaration from classify_name
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
0b5d0a41fd
replace a chain of if let
by macro
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
d6ae1b5f0f
refactor name_ref_kind.rs
2019-10-22 23:47:31 +03:00
Ekaterina Babshukova
11577288c2
initial classify_name
2019-10-22 23:47:31 +03:00
bors[bot]
c15ee97fff
Merge #2046
...
2046: Bump crates r=matklad a=kjeremy
Co-authored-by: kjeremy <kjeremy@gmail.com>
2019-10-22 17:22:09 +00:00
bors[bot]
ba95de936d
Merge #1933
...
1933: Adds "replace with guarded return" assist r=matklad a=mikhail-m1
first draft for #1782 . I'm pretty sure I missed something.
Co-authored-by: Mikhail Modin <mikhailm1@gmail.com>
2019-10-22 17:10:17 +00:00
kjeremy
e9bab85b65
Bump crates
2019-10-22 13:01:26 -04:00
bors[bot]
8f4480d180
Merge #2044
...
2044: Fixup folding ranges for clients with lineFoldingOnly=true r=matklad a=ztlpn
Fixes #2033
Co-authored-by: Alex Zatelepin <mvzp10@gmail.com>
2019-10-22 07:57:37 +00:00
Alex Zatelepin
6d105ccd93
add test #2033
2019-10-21 22:34:44 +03:00
Alex Zatelepin
9d5e932626
fixup folding ranges for "lineFoldingOnly" clients #2033
2019-10-21 21:35:42 +03:00
oxalica
24d50ebcd1
Guess macro braces from docs
2019-10-21 02:16:01 +08:00
Mikhail Modin
fb215dc192
Adds "replace with guarded return" assist
2019-10-20 19:14:32 +01:00
Aleksey Kladov
5376c769f0
rename tools -> xtask
2019-10-17 23:14:05 +03:00
Aleksey Kladov
7b15c4f7ae
WIP: move to xtasks
2019-10-17 22:54:38 +03:00
kjeremy
c3045c68a9
relative-path 1.0
2019-10-17 13:08:33 -04:00
Laurențiu Nicola
a6b980d6d4
Bump deps
2019-10-17 18:08:11 +03:00
bors[bot]
762fce5bdd
Merge #2012
...
2012: #1435 postfix completion for integer literals r=matklad a=pasa
Fix for #1435 Incorrect postfix completion for integer literals
Co-authored-by: Sergey Parilin <parilinsa@gmail.com>
2019-10-17 11:21:00 +00:00
bors[bot]
84d9fd1864
Merge #1998
...
1998: No need to make config pub r=matklad a=kjeremy
Just a drive by
Co-authored-by: kjeremy <kjeremy@gmail.com>
2019-10-17 11:10:25 +00:00
Aleksey Kladov
260ae2dbc9
minor cleanup
2019-10-16 13:26:02 +03:00
Sergey Parilin
bec47e221f
#1435 postfix completion for integer literals
2019-10-14 18:39:40 +03:00
bors[bot]
8e3864fd58
Merge #2008
...
2008: Prepare SourceDatabase API for lazy file loading r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-14 13:26:42 +00:00
Aleksey Kladov
abf2179c0b
Prepare SourceDatabase API for lazy file loading
2019-10-14 16:23:55 +03:00
bors[bot]
e182825170
Merge #2006
...
2006: Improvements around `Arc<[T]>` r=matklad a=sinkuu
First commit tries to avoid cloning `Arc<[T]>` to a temporary `Vec` for mutating it, if there are no other strong references. Second commit utilizes [`FromIterator for Arc<[T]>`](https://doc.rust-lang.org/std/sync/struct.Arc.html#impl-FromIterator%3CT%3E ) instead of `.collect::<Vec<_>>().into()` to avoid allocation in `From<Vec<T>> for Arc<[T]>`.
Co-authored-by: Shotaro Yamada <sinkuu@sinkuu.xyz>
2019-10-14 13:14:18 +00:00
bors[bot]
1f4fbc0035
Merge #2007
...
2007: remove one more dependency on source roots r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-14 12:22:54 +00:00
Aleksey Kladov
1555a1aa0d
remove one more dependency on source roots
2019-10-14 15:15:47 +03:00
bors[bot]
bc7de5d47a
Merge #2002
...
2002: Remove unused dependencies r=matklad a=sinkuu
Co-authored-by: Shotaro Yamada <sinkuu@sinkuu.xyz>
2019-10-14 11:10:20 +00:00
Shotaro Yamada
e4ffa79b3e
Enable serde
feature in ra_syntax/Cargo.toml
2019-10-14 19:56:29 +09:00
Shotaro Yamada
3a55b5bf01
make_mut_slice
2019-10-14 19:50:12 +09:00
bors[bot]
691bc27686
Merge #1999
...
1999: Simplify find().is_some() to any() r=matklad a=kjeremy
Co-authored-by: kjeremy <kjeremy@gmail.com>
2019-10-14 09:44:04 +00:00
bors[bot]
85361e8d50
Merge #2000
...
2000: Use correct db type r=matklad a=kjeremy
I think this is more correct. No test fallouts.
Co-authored-by: kjeremy <kjeremy@gmail.com>
2019-10-14 09:34:29 +00:00
Shotaro Yamada
b462eb96b8
import make_mut_arc_slice
2019-10-14 17:21:38 +09:00
Shotaro Yamada
965ca0d271
.collect()
directly into Arc<[T]>
2019-10-14 14:25:05 +09:00
Shotaro Yamada
f8d4cdc170
Avoid cloning Arc<[T]>
into a vec if possible
2019-10-14 14:25:05 +09:00
Aleksey Kladov
c00f298fd2
add syntax-tree based indents
2019-10-12 22:07:47 +03:00
Florian Diebold
2955fbc7e1
Split up infer.rs further
...
- coercion logic goes to `coerce.rs`
- expression inference goes to `expr.rs`
- pattern inference goes to `pat.rs`
2019-10-12 18:41:11 +02:00
Shotaro Yamada
5ca6281164
Remove unused dependencies
2019-10-12 08:00:54 +09:00
Shotaro Yamada
8c72c00abd
Remove smol_str dependency from ra_syntax
2019-10-12 07:48:23 +09:00
kjeremy
a1d631da4f
Use correct db type
2019-10-11 15:56:17 -04:00
kjeremy
53d1673edc
use any()
2019-10-11 15:55:45 -04:00
kjeremy
04963fa14d
No need to make config pub
2019-10-11 15:13:15 -04:00
bors[bot]
0896ca04c4
Merge #1989
...
1989: Chalk update to simplified IR r=flodiebold a=kjeremy
Co-authored-by: kjeremy <kjeremy@gmail.com>
2019-10-11 11:12:27 +00:00
Aleksey Kladov
ebca677180
reduce visibility
2019-10-11 11:37:54 +03:00
bors[bot]
f70c54ccfb
Merge #1994
...
1994: remove last traces of source roots from hir r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-11 07:49:39 +00:00
Aleksey Kladov
e44c7ce200
remove last traces of source roots from hir
2019-10-11 10:48:46 +03:00
Shotaro Yamada
0d0a444d43
Remove as_original_file
2019-10-11 06:53:43 +09:00
Shotaro Yamada
04741ae2bc
Use original_file
instead of as_original_file
2019-10-11 06:50:53 +09:00
kjeremy
4ba2c5b2de
Chalk update to simplified IR
2019-10-10 14:51:50 -04:00
bors[bot]
da190278e9
Merge #1981
...
1981: tweak fn labels in completion r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-10 15:15:46 +00:00
Aleksey Kladov
8d3d5cbdb0
tweak fn labels in completion
2019-10-10 18:09:14 +03:00
Aleksey Kladov
29e83988be
don't special case macro_use
2019-10-10 17:48:30 +03:00
Aleksey Kladov
89826a50fc
don't special case path attr
2019-10-10 17:42:29 +03:00
Aleksey Kladov
b36b8970cc
simplify a bit
2019-10-10 17:23:01 +03:00
Aleksey Kladov
5140283277
simplify some tests
2019-10-10 14:51:35 +03:00
Aleksey Kladov
ce0d4a3b1d
Refactor and fix some more edge cases around name resolution
2019-10-10 14:46:14 +03:00
Aleksey Kladov
31561b118f
if completion does auto-insertion, indicate this in the label
2019-10-10 13:18:42 +03:00
Ekaterina Babshukova
aa2f58550a
add module
methods
2019-10-09 14:59:47 +03:00
bors[bot]
afc871199d
Merge #1973
...
1973: add <> for type aliases as well r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-09 08:54:00 +00:00
Aleksey Kladov
d9f83d9b16
add <> for type aliases as well
2019-10-09 11:53:32 +03:00
Aleksey Kladov
048be5d9a3
smal cleanup
2019-10-09 11:26:41 +03:00