Jonas Schievink
19586bc5c6
Record HirFileId's in profiler
2020-06-24 16:53:16 +02:00
Aleksey Kladov
08e2149eab
Simplify
2020-06-24 10:28:28 +02:00
Aleksey Kladov
d016cb4867
Use only one code-path for parsing fixtures
...
This removes leading newlines everywhere, shifting all ranges in tests
by one
2020-06-24 00:48:38 +02:00
Aleksey Kladov
e5101ae150
Centralize fixture parsing for assists
2020-06-24 00:30:34 +02:00
Aleksey Kladov
f2f69e75c8
Minor, rename
2020-06-23 22:51:33 +02:00
Aleksey Kladov
295c8d4f7f
Complicate
...
Fixing test fallout unfortunately requires more work, we need to do
it, but let's merge something at least!
2020-06-23 20:38:36 +02:00
Aleksey Kladov
84cd28fddc
Cut problematic dependency
2020-06-23 18:56:26 +02:00
Aleksey Kladov
fdf86aee18
Nicer API
2020-06-23 18:46:56 +02:00
Aleksey Kladov
3486b47e5c
Simplify
2020-06-23 18:43:55 +02:00
Aleksey Kladov
21f751a0e5
Simplify
2020-06-23 18:37:26 +02:00
Aleksey Kladov
30748161f0
Simplify
2020-06-23 18:37:26 +02:00
Aleksey Kladov
6996ec860b
Drop rarely used fixture functionality
2020-06-23 18:37:26 +02:00
Aleksey Kladov
dad1333b48
New VFS
2020-06-23 17:51:06 +02:00
Aleksey Kladov
6a6098d4c3
Remove RelativePathBuf from fixture
...
The paths in fixture are not really relative (the default one is
`/main.rs`), so it doesn't make sense to use `RelativePathBuf` here.
2020-06-23 00:14:44 +02:00
Florian Diebold
584bddef0c
Don't panic on crates depending on themselves
...
Fixes #3883 .
2020-06-19 18:38:03 +02:00
Aleksey Kladov
d8a5d39c2d
Make relevant_crates return a Set
2020-06-11 11:30:06 +02:00
Aleksey Kladov
d8571e076c
Simplify
2020-06-09 13:17:22 +02:00
bors[bot]
f133159ec0
Merge #4760
...
4760: Minimize FileLoader interface r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com >
2020-06-05 15:23:22 +00:00
Aleksey Kladov
bbb40d7463
Minimize FileLoader interface
2020-06-05 17:22:56 +02:00
bors[bot]
4029628f15
Merge #4729 #4748
...
4729: Hover actions r=matklad a=vsrs
This PR adds a `hoverActions` LSP extension and a `Go to Implementations` action as an example:

4748: Add an `ImportMap` and use it to resolve item paths in `find_path` r=matklad a=jonas-schievink
Removes the "go faster" queries I added in https://github.com/rust-analyzer/rust-analyzer/pull/4501 and https://github.com/rust-analyzer/rust-analyzer/pull/4506 . I've checked this PR on the rustc code base and the assists are still fast.
This should fix https://github.com/rust-analyzer/rust-analyzer/issues/4515 .
Note that this does introduce a change in behavior: We now always refer to items defined in external crates using paths through the external crate. Previously we could also use a local path (if for example the extern crate was reexported locally), as seen in the changed test. If that is undesired I can fix that, but the test didn't say why the previous behavior would be preferable.
Co-authored-by: vsrs <vit@conrlab.com >
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com >
Co-authored-by: Jonas Schievink <jonas.schievink@ferrous-systems.com >
2020-06-05 15:14:35 +00:00
Aleksey Kladov
bba374bab2
More direct signature for resolve_path
2020-06-05 15:07:30 +02:00
Aleksey Kladov
e63c00f100
Rename resolve_relative_path -> resolve_path
...
For things like `concant!(env!("OUT_DIR"))`, we need to support abs paths
2020-06-05 14:58:30 +02:00
Jonas Schievink
d08c63cb9e
Add an ImportMap
2020-06-04 19:33:01 +02:00
Jeremy Kolb
a5cc9a8a9b
Fix some clippy perf warnings
2020-05-25 13:35:52 -04:00
Aleksey Kladov
f26b7928e0
Merge pull request #4495 from vsrs/fixture_meta
...
Test fixtures parsing improvements
2020-05-24 15:32:52 +02:00
vsrs
2c00bd8c6a
Propogate fixture meta to AnalysisHost
...
Except crate name.
2020-05-16 15:23:43 +03:00
vsrs
256fb7556e
Remove temporary FixtureEntry parsed_meta field.
2020-05-16 12:25:26 +03:00
vsrs
d901e0e709
Reimplement ra_db::fixture::ParsedMeta
...
in terms of test_utils::FixtureMeta
2020-05-16 11:57:41 +03:00
Timo Freiberg
e17193dc51
Expand fixture documentation a little
2020-05-10 16:51:12 +02:00
Timo Freiberg
8a5d14453e
Add fixture doc comment
2020-05-06 18:09:28 +02:00
Aleksey Kladov
b1d5817dd1
Convert code to text-size
2020-04-25 11:59:18 +02:00
Jeremy Kolb
d7f3d858ad
Some clippy fixes
2020-04-19 15:15:49 -04:00
bors[bot]
b1594f1080
Merge #3727
...
3727: Introduce ra_proc_macro r=matklad a=edwin0cheng
This PR implemented:
1. Reading dylib path of proc-macro crate from cargo check , similar to how `OUTDIR` is obtained.
2. Added a new crate `ra_proc_macro` and implement the foot-work for reading result from external proc-macro expander.
3. Added a struct `ProcMacroClient` , which will be responsible to the client side communication to the External process.
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com >
2020-03-26 17:09:32 +00:00
Edwin Cheng
db162df264
Remove deps on tt_mbe
2020-03-27 00:46:40 +08:00
Aleksey Kladov
b7aaefb5a4
Minor incremental tests cleanup
2020-03-26 15:44:31 +01:00
Edwin Cheng
d0b6ed4441
Add ProcMacroClient
2020-03-26 03:29:45 +08:00
Emil Lauridsen
33c6c7abc6
Support loading OUT_DIR from cargo check at launch
2020-03-17 14:47:05 +01:00
Aleksey Kladov
9faea2364d
Use dyn Trait for working with databse
...
It improves compile time in `--release` mode quite a bit, it doesn't
really slow things down and, conceptually, it seems closer to what we
want the physical architecture to look like (we don't want to
monomorphise EVERYTHING in a single leaf crate).
2020-03-16 17:42:30 +01:00
Kirill Bulatov
92fd430dab
Use Display instead of a custom method
2020-03-16 12:03:43 +02:00
Kirill Bulatov
059ed25a3e
Fix crate display name dashes
2020-03-16 11:47:52 +02:00
Edwin Cheng
6ea7c31915
Add extern source
2020-03-11 11:04:02 +08:00
Edwin Cheng
22f064cca7
Add resolve_extern_path in DB
2020-03-11 01:06:01 +08:00
Edwin Cheng
8153a0b3ef
Add ExternSourceId and env functions
2020-03-11 01:06:01 +08:00
Edwin Cheng
773f3afd36
Add fixture meta for single file fixture
2020-03-11 00:45:03 +08:00
Aleksey Kladov
100cbc57ce
Simplify
2020-03-09 11:19:03 +01:00
Aleksey Kladov
d0d5aa935b
Simplify
2020-03-09 11:17:39 +01:00
Aleksey Kladov
254ef1860b
Minimize API
2020-03-09 11:16:06 +01:00
Aleksey Kladov
0320ebdd10
Use Index for CrateGraph
2020-03-09 11:11:59 +01:00
Kirill Bulatov
e1aa96f2c5
Less abstract CrateData api
2020-03-09 11:26:46 +02:00
Kirill Bulatov
5cffef56e2
Consider crate declaration names
2020-03-08 23:00:50 +02:00