Florian Diebold
|
16c6937447
|
Lower impl trait to variables, move away from using placeholders where they don't belong
|
2020-02-07 18:28:10 +01:00 |
|
Michal Terepeta
|
d6c2a59538
|
Split infer query into two for better profiling
This is the same change as we did with `crate_def_map` and it does seem
that we mostly spend time in salsa, without recomputing much on
rust-analyzer side.
Example output:
```
233ms - handle_inlay_hints
163ms - get_inlay_hints
163ms - SourceAnalyzer::new
67ms - def_with_body_from_child_node
67ms - analyze_container
67ms - analyze_container
67ms - Module::from_definition
67ms - Module::from_file
67ms - crate_def_map
0ms - parse_macro_query (6 calls)
0ms - raw_items_query (1 calls)
66ms - ???
0ms - crate_def_map (1 calls)
0ms - crate_def_map (1 calls)
96ms - infer
2ms - trait_solve_query (2 calls)
94ms - ???
0ms - body_with_source_map_query (1 calls)
0ms - crate_def_map (1 calls)
[...]
```
Signed-off-by: Michal Terepeta <michal.terepeta@gmail.com>
|
2020-01-03 19:58:11 +01:00 |
|
Florian Diebold
|
67a2555f6d
|
Update Chalk, clean up Chalk integration a bit
|
2019-12-23 00:08:03 +01:00 |
|
Florian Diebold
|
1c622e9fed
|
Add cycle recovery for type aliases
|
2019-11-30 12:57:32 +01:00 |
|
Florian Diebold
|
3ca40f7c08
|
Add cycle recovery for generic predicates
|
2019-11-30 12:57:32 +01:00 |
|
Florian Diebold
|
cf6809645e
|
Handle cycles in impl types better
- impl Trait<Self> for S is allowed
- impl Trait for S<Self> is an invalid cycle, but we can add cycle recovery for
it in Salsa now
|
2019-11-30 12:57:32 +01:00 |
|
Aleksey Kladov
|
8d34696826
|
Memoize impl resolutions
|
2019-11-27 22:12:09 +03:00 |
|
Aleksey Kladov
|
a87579500a
|
Move Ty
|
2019-11-27 21:16:00 +03:00 |
|