Florian Diebold
|
c200025794
|
Fix shift_bound_vars
It should only shift free vars (maybe the name isn't the best...)
|
2020-02-22 11:09:21 +01:00 |
|
Florian Diebold
|
2d5ab63247
|
Add &dyn Trait -> &dyn SuperTrait coercion, and fix &T -> &dyn Trait
|
2020-02-22 11:09:21 +01:00 |
|
Florian Diebold
|
0dfbbaf03b
|
Implement dyn Trait unsizing as well
|
2020-02-22 11:09:21 +01:00 |
|
Kirill Bulatov
|
eceaf94f19
|
More manual clippy fixes
|
2020-02-18 16:12:37 +02:00 |
|
Kirill Bulatov
|
b8ddcb0652
|
Run cargo +nightly fix --clippy -Z unstable-options
|
2020-02-18 16:03:08 +02:00 |
|
Florian Diebold
|
5028b86cb8
|
Move hir_fmt code to display module
|
2020-02-14 15:01:42 +01:00 |
|
Florian Diebold
|
a324d066cb
|
Rename Ty::Param => Ty::Placeholder
This aligns more with Chalk.
|
2020-02-14 14:44:00 +01:00 |
|
Florian Diebold
|
9d6061f3bb
|
Fix some TODOs
|
2020-02-07 18:28:11 +01:00 |
|
Florian Diebold
|
b0bb8622ee
|
Don't print implicit type args from impl Trait
|
2020-02-07 18:28:11 +01:00 |
|
Florian Diebold
|
dded90a748
|
Formatting
|
2020-02-07 18:28:10 +01:00 |
|
Florian Diebold
|
0718682cff
|
Fix compilation of other crates
|
2020-02-07 18:28:10 +01:00 |
|
Florian Diebold
|
a3d8cffde3
|
Use variables in predicates as well
|
2020-02-07 18:28:10 +01:00 |
|
Florian Diebold
|
86348f5994
|
Comment fixes / todos
|
2020-02-07 18:28:10 +01:00 |
|
Florian Diebold
|
3397ca679f
|
Fix APIT some more
|
2020-02-07 18:28:10 +01:00 |
|
Florian Diebold
|
ed25cf70d5
|
Change Ty::Param to contain param ID
|
2020-02-07 18:28:10 +01:00 |
|
Florian Diebold
|
4789a993eb
|
Fix printing of function types
|
2020-02-07 18:28:10 +01:00 |
|
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 |
|
Florian Diebold
|
93aa166748
|
wip lower impl trait to type args
|
2020-02-07 18:28:10 +01:00 |
|
Florian Diebold
|
7ea4bce1b2
|
Add impl trait lowering mode
|
2020-02-07 18:28:10 +01:00 |
|
Florian Diebold
|
22a65b11b3
|
Introduce TyLoweringContext
|
2020-02-07 18:28:10 +01:00 |
|
Aleksey Kladov
|
6ca19b2188
|
Standard formatting for array types
|
2020-01-28 15:32:20 +01:00 |
|
Kirill Bulatov
|
4029e44102
|
Omit default parameters for reference types
|
2020-01-22 16:55:09 +02: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 |
|
Kirill Bulatov
|
242be3631e
|
Omit closure parameters
|
2019-12-23 18:30:25 +02:00 |
|
kjeremy
|
0d5d63a80e
|
Clippy lints
|
2019-12-20 15:14:30 -05:00 |
|
Aleksey Kladov
|
8fc20b6503
|
Rename ContainerId -> AssocContainerId
|
2019-12-20 12:00:05 +01:00 |
|
Kirill Bulatov
|
14c167a9f6
|
Omit default parameter types
|
2019-12-19 12:27:33 +02:00 |
|
Aleksey Kladov
|
29b5e1ec2a
|
Reformat
|
2019-12-07 13:19:21 +01:00 |
|
Aleksey Kladov
|
d6c2b92409
|
Refactor parameter count tracking
|
2019-12-07 13:13:00 +01:00 |
|
Aleksey Kladov
|
8e9837df21
|
Remove idx and parent generics from generics
This makes `hir_def::GenericParams` flatter. The logic for
re-numbering the params is moved to hir instead.
|
2019-12-07 13:05:56 +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
|
1d14fd1737
|
Use Name::missing consistently
|
2019-11-27 23:22:20 +03: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 |
|
Aleksey Kladov
|
4e17718a9a
|
Doc primitives
|
2019-11-26 15:41:48 +03:00 |
|
Aleksey Kladov
|
4c43631829
|
Introduce hir_ty
|
2019-11-26 15:06:06 +03:00 |
|