aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Minor: fix comment styleAleksey Kladov2021-05-231-1/+3
|/ / | | | | | | See https://github.com/rust-analyzer/rust-analyzer/blob/master/docs/dev/style.md#documentation
* / Explain why nested `TypeRef` aren't internedJonas Schievink2021-05-231-0/+4
|/
* Give ‘unsafe’ semantic token modifier to unsafe traitsAramis Razzaghipour2021-05-235-3/+20
|
* Merge #8938bors[bot]2021-05-234-15/+118
|\ | | | | | | | | | | | | | | 8938: internal: Fix #8931 r=flodiebold a=flodiebold - and add some better checking for similar bugs Co-authored-by: Florian Diebold <[email protected]>
| * Paper over #8931 a bit moreFlorian Diebold2021-05-232-2/+4
| | | | | | | | | | | | | | | | | | The problem was the skipping of binders in `resolve_method_call_as_callable`; this still doesn't use the _correct_ substitution, but at least it doesn't return a type with free variables in it. Fixes #8931.
| * Add test for #8931 and better checkingFlorian Diebold2021-05-233-13/+114
| |
* | Render where clauses and more generic paramsJonas Schievink2021-05-232-34/+155
| |
* | Pretty-print generic parametersJonas Schievink2021-05-232-22/+99
| |
* | ItemTree: pretty-print all pathsJonas Schievink2021-05-222-9/+119
|/
* Add last remaining module docstringFlorian Diebold2021-05-221-1/+3
|
* Merge #8923bors[bot]2021-05-2221-34/+11
|\ | | | | | | | | | | | | | | | | 8923: Add even more docs r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Add even more docsAleksey Kladov2021-05-2221-34/+11
| |
* | Merge #8922bors[bot]2021-05-2219-28/+71
|\| | | | | | | | | | | | | | | | | 8922: Add more docs r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Add more docsAleksey Kladov2021-05-2219-28/+71
| |
* | Merge #8868bors[bot]2021-05-228-282/+192
|\| | | | | | | | | | | | | | | 8868: internal: replace AstTransformer with mutable syntax trees r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * use more precise nameAleksey Kladov2021-05-223-12/+7
| |
| * internal: replace AstTransformer with mutable syntax treesAleksey Kladov2021-05-226-208/+123
| |
* | Merge #8921bors[bot]2021-05-221-1/+13
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8921: Resolve any lifetime variables to 'static after inference r=flodiebold a=flodiebold Chalk's unification can sometimes create lifetime variables, which we currently don't really deal with, but at least we don't want to leak them outside of inference. Should fix #8919. Co-authored-by: Florian Diebold <[email protected]>
| * | Resolve any lifetime variables to 'static after inferenceFlorian Diebold2021-05-221-1/+13
| |/ | | | | | | | | | | | | | | Chalk's unification can sometimes create lifetime variables, which we currently don't really deal with, but at least we don't want to leak them outside of inference. Should fix #8919.
* | Merge #8901bors[bot]2021-05-222-27/+75
|\ \ | |/ |/| | | | | | | | | | | | | | | | | 8901: fix: `fill_match_arms` hangs on a tuple of large enums r=matklad a=iDawer + Lazy computation of missing arms. + Convenience function to test lazy computation: `ide_assists::tests::check_assist_unresolved`. Fixes #8835 Co-authored-by: Dawer <[email protected]>
| * Test `fill_match_arms` for lazy computation.Dawer2021-05-212-3/+38
| | | | | | | | This also adds `ide_assists::tests::check_assist_unresolved` function.
| * fix: `fill_match_arms` hangs on a tuple of large enumsDawer2021-05-201-2/+14
| |
| * Compute missing arms lazily.Dawer2021-05-201-23/+24
| |
* | Work around non-unique AttrIdsJonas Schievink2021-05-222-9/+39
| |
* | Add a "Debug ItemTree" LSP requestJonas Schievink2021-05-215-0/+46
| |
* | Add an ItemTree pretty-printerJonas Schievink2021-05-213-0/+780
| |
* | impl Display for AttrInput/ImportAliasJonas Schievink2021-05-212-1/+19
| |
* | Remove `StructDefKind`Jonas Schievink2021-05-213-20/+4
| |
* | Merge #8856bors[bot]2021-05-2123-1077/+1206
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8856: Use Chalk for unification r=flodiebold a=flodiebold - use Chalk's unification, get rid of our own `unify` - rewrite coercion to not use unification internals and to be more analogous to rustc - fix various coercion bugs - rewrite handling of obligations, since the old hacky optimization where we noted when an inference variable changes wasn't possible anymore - stop trying to deeply resolve types all the time during inference, instead only do it shallowly where necessary Co-authored-by: Florian Diebold <[email protected]>
| * | Clean up visibilitiesFlorian Diebold2021-05-211-10/+10
| | |
| * | Some remaining cleanupsFlorian Diebold2021-05-213-18/+13
| | |
| * | Fix test after rebaseFlorian Diebold2021-05-211-1/+1
| | |
| * | Record type mismatches for failed coercions in match etc.Florian Diebold2021-05-212-15/+21
| | |
| * | Refactor expectation handlingFlorian Diebold2021-05-213-54/+88
| | | | | | | | | | | | So as to not use `TyKind::Error` as "no expectation".
| * | Remove TypeVariableTableFlorian Diebold2021-05-212-56/+48
| | |
| * | Deal with goals arising from unificationFlorian Diebold2021-05-214-18/+21
| | |
| * | Get rid of resolve_ty_as_possibleFlorian Diebold2021-05-218-88/+56
| | | | | | | | | | | | Instead use shallow resolving where necessary.
| * | Make resolve_ty_shallow return TyFlorian Diebold2021-05-213-14/+7
| | |
| * | Rework obligation handlingFlorian Diebold2021-05-2111-143/+240
| | | | | | | | | | | | | | | | | | | | | | | | We can't do the easy hack that we did before anymore, where we kept track of whether any inference variables changed since the last time we rechecked obligations. Instead, we store the obligations in canonicalized form; that way we can easily check the inference variables to see whether they have changed since the goal was canonicalized.
| * | Fix another panicFlorian Diebold2021-05-211-17/+15
| | |
| * | Improve debug printing without TLSFlorian Diebold2021-05-212-158/+21
| | |
| * | Fix panicFlorian Diebold2021-05-211-1/+4
| | |
| * | Fix HIR expecting errors to unify with anythingFlorian Diebold2021-05-213-8/+65
| | |
| * | Fix compilation of hir and ide cratesFlorian Diebold2021-05-212-3/+3
| | |
| * | Fix if/else coercionFlorian Diebold2021-05-211-1/+4
| | |
| * | Make diverging type variables work againFlorian Diebold2021-05-212-0/+23
| | | | | | | | | | | | | | | Chalk doesn't know about the `diverging` flag, so we need to instead propagate it before fully resolving the variables.
| * | Fix handling of diverging branches in match coercionFlorian Diebold2021-05-212-4/+52
| | | | | | | | | | | | Fixes #7626.
| * | Fix coercion of two closures to a function pointerFlorian Diebold2021-05-214-56/+48
| | | | | | | | | | | | Fixes #8604.
| * | Update tests with expected changesFlorian Diebold2021-05-212-40/+34
| | |
| * | Make type resolver a proper folder, make it resolve consts as wellFlorian Diebold2021-05-211-48/+117
| | |