Jonas Schievink
3c496f7fa7
Use ImportMap
in find_path
, remove old queries
2020-06-04 19:33:01 +02:00
Jonas Schievink
d08c63cb9e
Add an ImportMap
2020-06-04 19:33:01 +02:00
David Tolnay
4461796f33
Fix type inference failure when built with log/kv_unstable
...
This code is broken by an `impl From<kv::Error> for fmt::Error` in the
log crate when building in a codebase that has the log/kv_unstable
feature enabled.
$ cargo check --manifest-path crates/ra_hir_def/Cargo.toml
Checking ra_hir_def v0.1.0
Finished dev [unoptimized] target(s) in 0.75s
$ cargo check --manifest-path crates/ra_hir_def/Cargo.toml --features log/kv_unstable
Checking ra_hir_def v0.1.0
error[E0282]: type annotations needed for the closure `fn(&str) -> std::result::Result<(), _>`
--> crates/ra_hir_def/src/path.rs:278:17
|
278 | f.write_str("::")?;
| ^^^^^^^^^^^^^^^^^^ cannot infer type
|
help: give this closure an explicit return type without `_` placeholders
|
276 | let mut add_segment = |s| -> std::result::Result<(), _> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2020-06-03 19:06:02 -07:00
Aaron Loucks
85c4edb0af
Consolidate documentation expansion and merging
...
Removes the duplicated `expand_doc_attrs` and `merge_doc_comments_and_attrs`
functions from `ra_ide` and exposes the same functionality via
`ra_hir::Documentation::from_ast`.
2020-06-03 06:54:41 -04:00
Aaron Loucks
5837acce53
Add basic hover and completion doc tests for macro generated items
2020-06-03 06:46:07 -04:00
Aaron Loucks
4c655c01f3
Enable hover and autocomplete docs on macro generated items
2020-06-03 06:46:07 -04:00
Paul Daniel Faria
a9cb2933fb
Add highlight support for unsafe fn calls and raw ptr deref
2020-06-02 18:54:00 -04:00
robojumper
cc6ba84c40
fmt
2020-05-31 12:06:22 +02:00
robojumper
1cd78a3355
correctly infer labelled breaks
2020-05-31 11:40:18 +02:00
robojumper
367487fe88
Support raw_ref_op's raw reference operator
2020-05-28 21:42:22 +02:00
kjeremy
bee4f8f9fe
Pass trivially copy types as copy
2020-05-26 14:12:13 -04:00
Jeremy Kolb
a5cc9a8a9b
Fix some clippy perf warnings
2020-05-25 13:35:52 -04:00
Aleksey Kladov
130318b823
Merge pull request #4548 from bnjjj/fix_4464
...
add support of feature flag for runnables
2020-05-24 15:34:35 +02:00
Florian Diebold
02c2beaa8c
Provide Chalk well-known traits
2020-05-22 17:32:49 +02:00
Benjamin Coenen
a7c8aa7c60
add support of feature flag for runnables #4464
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2020-05-21 10:53:29 +02:00
Benjamin Coenen
c6143742bd
add support of feature flag for runnables #4464
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2020-05-21 10:48:42 +02:00
Jonas Schievink
6cdfd1c3cf
Make find_path_inner
a query
...
This eliminates any remaining performance problems in the
"Implement default members" assist (at least that I've found).
2020-05-20 23:54:50 +02:00
Aleksey Kladov
ecac5d7de2
Switch to new magic marks
2020-05-20 13:02:53 +02:00
Aleksey Kladov
dce31efdde
Cleanup query fn naming
2020-05-19 16:54:45 +02:00
Aleksey Kladov
01bd1e1296
Move public API to the top
2020-05-19 16:46:33 +02:00
Aleksey Kladov
908da9ac1b
Simplify
2020-05-19 16:45:57 +02:00
Aleksey Kladov
5c9ebbeaa4
Cleanup imports
2020-05-19 16:43:26 +02:00
bors[bot]
38e8f35855
Merge #4501
...
4501: Querify `importable_locations_in_crate` r=jonas-schievink a=jonas-schievink
This brings the time needed to compute the `add_missing_impl_members` assist down from ~5 minutes to 20 seconds on my test workload (which is editing within an impl of a MIR [`MutVisitor`](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_middle/mir/visit/trait.MutVisitor.html ))
cc #4498
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-05-18 19:43:12 +00:00
Jonas Schievink
8f80df1117
Querify importable_locations_in_crate
...
This brings the time needed to compute the `add_missing_impl_members`
assist down from ~5 minutes to 20 seconds
2020-05-18 21:42:39 +02:00
Edwin Cheng
12a3bf3c31
Create LowerCtx on the fly
2020-05-17 23:37:30 +08:00
Florian Diebold
3f42b2e837
Handle Self
in values and patterns
...
I.e.
- `Self(x)` or `Self` in tuple/unit struct impls
- `Self::Variant(x)` or `Self::Variant` in enum impls
- the same in patterns
Fixes #4454 .
2020-05-15 17:25:28 +02:00
Matthew Jasper
11c0a5bb60
Highlight mutable statics as mutable
2020-05-10 16:25:51 +01:00
Edwin Cheng
92665358cd
Rename ImplItem to AssocItem
2020-05-05 23:56:10 +08:00
bors[bot]
756e91732b
Merge #4305
...
4305: Favor types for record type struct in name resolution r=matklad a=edwin0cheng
Fixed #4235
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2020-05-05 15:06:41 +00:00
Edwin Cheng
07de8ea165
invert if
2020-05-05 23:01:07 +08:00
Benjamin Coenen
831bb1cf91
refactor: use attrsOwner directly in is_cfg_enabled
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2020-05-05 09:34:07 +02:00
Edwin Cheng
cf821cc332
Change union resolve types only
2020-05-05 01:19:54 +08:00
Edwin Cheng
e921195d93
Change favor_types to has_constructor
2020-05-05 01:15:27 +08:00
Edwin Cheng
5ae18f4f81
Remove unused import
2020-05-05 00:34:54 +08:00
Edwin Cheng
af001677d1
Fix test
2020-05-05 00:17:30 +08:00
Edwin Cheng
8d96db3417
Favor types for Record in name resolution
2020-05-05 00:17:22 +08:00
bors[bot]
57f285d0eb
Merge #4283
...
4283: Support macro for trait items r=matklad a=edwin0cheng
Fixed #4039
r? @flodiebold
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
Co-authored-by: Edwin Cheng <edwin@m-inverse.com>
2020-05-04 10:49:24 +00:00
Edwin Cheng
5899c8eaa9
Fixes names for collect_item funtions
2020-05-04 18:34:32 +08:00
Benjamin Coenen
bed115d6e1
add support of cfg attributes on enum variants #4279
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2020-05-03 17:56:45 +02:00
Edwin Cheng
8b6216df05
Support macro for trait items
2020-05-03 22:08:39 +08:00
bors[bot]
fb8fb65131
Merge #4234
...
4234: Support local_inner_macros r=jonas-schievink a=edwin0cheng
This PR implements `#[macro_export(local_inner_macros)]` support.
Note that the rustc implementation is quite [hacky][1] too. :)
[1]: 614f273e93/src/librustc_resolve/macros.rs (L456)
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2020-05-02 10:30:49 +00:00
Aleksey Kladov
4f2134cc33
Introduce EffectExpr
2020-05-02 11:21:39 +02:00
Edwin Cheng
edf0b4c152
Test whether it is bang macro properly
2020-05-02 10:16:26 +08:00
Edwin Cheng
291d03949b
Add test in name resolutions
2020-05-02 10:06:17 +08:00
Aleksey Kladov
fd030f9450
Revert "Merge #4233 "
...
This reverts commit a5f2b16366
, reversing
changes made to c96b2180c1
.
2020-05-02 01:12:37 +02:00
Edwin Cheng
7bbdeb43a4
Make AttrQuery copyable
2020-05-01 20:58:24 +08:00
Edwin Cheng
bdcf6f5658
Introduce LowerCtx for path lowering
2020-05-01 20:01:17 +08:00
Edwin Cheng
e4267967a8
Support local_inner_macros
2020-05-01 11:23:03 +08:00
Aleksey Kladov
14126349be
Kill more zombies
2020-04-30 22:58:26 +02:00
Aleksey Kladov
292ba6a1f8
Remove dead code, which elaborately pretends to be alive
2020-04-30 22:41:14 +02:00