aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_ty/src/traits/chalk/mapping.rs
Commit message (Collapse)AuthorAgeFilesLines
* Rename ra_hir_ty -> hir_tyAleksey Kladov2020-08-131-787/+0
|
* Rename ra_db -> base_dbAleksey Kladov2020-08-131-1/+1
|
* Bump chalkLaurențiu Nicola2020-07-301-6/+16
|
* Align CallableDefId naming with other idsAleksey Kladov2020-07-161-3/+3
|
* Remove TypeCtor interningFlorian Diebold2020-07-151-7/+6
| | | | Our TypeCtor and Chalk's TypeName match now!
* Use Chalk closure supportFlorian Diebold2020-07-151-64/+33
|
* Add FIXMEJonas Schievink2020-07-141-0/+1
|
* Thread varargs through r-aJonas Schievink2020-07-141-2/+5
|
* Merge #5331bors[bot]2020-07-121-2/+6
|\ | | | | | | | | | | | | | | | | | | 5331: Fix #4966 r=flodiebold a=flodiebold We add a level of binders when converting our function pointer to Chalk's; we need to remove it again on the way back. Fixes #4966. Co-authored-by: Florian Diebold <[email protected]>
| * Fix #4966Florian Diebold2020-07-121-2/+6
| | | | | | | | | | We add a level of binders when converting our function pointer to Chalk's; we need to remove it again on the way back.
* | Use Chalk built-in representation for array typesFlorian Diebold2020-07-121-7/+36
| |
* | Remove built-in Unsize implsFlorian Diebold2020-07-121-0/+1
| | | | | | | | They exist in Chalk now.
* | Enable Chalk tracing in hir_ty testsFlorian Diebold2020-07-121-1/+4
| |
* | Upgrade ChalkFlorian Diebold2020-07-121-5/+10
|/
* Implement Chalk variable kindsFlorian Diebold2020-07-011-13/+30
| | | | | | | | | This means we need to keep track of the kinds (general/int/float) of variables in `Canonical`, which requires some more ceremony. (It also exposes some places where we're not really dealing with canonicalization correctly -- another thing to be cleaned up when we switch to using Chalk's types directly.) Should fix the last remaining issue of #2534.
* Bump chalkLaurențiu Nicola2020-06-261-1/+8
|
* Clean up handling of int/float literal typesFlorian Diebold2020-06-061-13/+11
| | | | | | 'Unknown' int/float types actually never exist as such, they get replaced by type variables immediately. So the whole `Uncertain<IntTy>` thing was unnecessary and just led to a bunch of match branches that were never hit.
* Merge #4761bors[bot]2020-06-051-0/+5
|\ | | | | | | | | | | | | | | 4761: Upgrade Chalk to published version r=matklad a=flodiebold CC @pksunkara Co-authored-by: Florian Diebold <[email protected]>
| * Upgrade Chalk to published versionFlorian Diebold2020-06-051-0/+5
| |
* | Implement return position impl trait / opaque type supportFlorian Diebold2020-06-051-5/+40
|/ | | | | | | | | | | | | This is working, but I'm not that happy with how the lowering works. We might need an additional representation between `TypeRef` and `Ty` where names are resolved and `impl Trait` bounds are separated out, but things like inference variables don't exist and `impl Trait` is always represented the same way. Also note that this doesn't implement correct handling of RPIT *inside* the function (which involves turning the `impl Trait`s into variables and creating obligations for them). That intermediate representation might help there as well.
* Upgrade ChalkFlorian Diebold2020-05-271-20/+20
| | | | | Chalk newly added TypeName::Never and Array; I implemented the conversion for Never, but not Array since that expects a const argument.
* Use Chalk's Ty::Function for function pointer typesFlorian Diebold2020-05-221-8/+19
| | | | | | Function pointers can be 'higher-ranked' over lifetimes, which is why they're not an application type in Chalk, but since we don't model lifetimes it doesn't matter for us yet.
* Use Chalk's built-in representation of function item typesFlorian Diebold2020-05-221-4/+22
|
* Split up chalk module a bitFlorian Diebold2020-05-221-0/+672