aboutsummaryrefslogtreecommitdiff
path: root/crates/hir_ty/src/autoderef.rs
Commit message (Collapse)AuthorAgeFilesLines
* Profile trait solving for all invocationsKirill Bulatov2021-04-141-4/+1
|
* Better places for spansKirill Bulatov2021-04-141-2/+1
|
* We need to go deeperKirill Bulatov2021-04-141-1/+5
|
* Add a missing spanKirill Bulatov2021-04-141-0/+2
|
* Fix crash on syn involving lifetimes returned by ChalkFlorian Diebold2021-04-091-6/+38
| | | | | | | | | | If we get lifetime variables back in autoderef, just immediately replace them by static lifetimes for now. Method resolution doesn't really deal correctly with new variables being introduced (this needs to be fixed more properly). This fixes `rust-analyzer analysis-stats --with-deps` crashing in the RA repo.
* Move Ty::builtin_derefLukas Wirth2021-04-071-1/+9
|
* Remove `SolutionVariables`, add ConstrainedSubst analogous to ChalkFlorian Diebold2021-04-061-5/+5
| | | | ... just missing the constraints.
* Move ProjectionTy methods to extension traitFlorian Diebold2021-04-051-1/+1
|
* Move things from `traits` module to `types` as wellFlorian Diebold2021-04-041-4/+2
|
* More TyBuilder useFlorian Diebold2021-04-041-23/+15
|
* Rename Ty::interned to Ty::kindFlorian Diebold2021-04-031-1/+1
| | | | ... since that's the actual method on Chalk side that matches the signature.
* Introduce `GenericArg` like in ChalkFlorian Diebold2021-04-031-2/+7
| | | | | | | Plus some more adaptations to Substitution. Lots of `assert_ty_ref` that we should revisit when introducing lifetime/const parameters.
* Align InEnvironment with ChalkFlorian Diebold2021-03-211-12/+12
| | | | | | This in particular means storing a chalk_ir::Environment, not our TraitEnvironment. This makes InEnvironment not usable for Type, where we need to keep the full TraitEnvironment.
* Align Canonical more with Chalk's versionFlorian Diebold2021-03-211-12/+21
| | | | In particular, use chalk_ir::CanonicalVarKinds.
* Turn Obligation into something similar to chalk_ir::DomainGoalFlorian Diebold2021-03-201-4/+5
| | | | This includes starting to make use of Chalk's `Cast` trait.
* Replace Projection variant in GenericPredicate with AliasEqLukas Wirth2021-03-191-7/+8
|
* Chalkify TraitRefFlorian Diebold2021-03-181-2/+3
|
* Rename Substs -> SubstitutionFlorian Diebold2021-03-161-2/+2
|
* Use chalk_ir::FnSigFlorian Diebold2021-03-141-1/+4
|
* Rename some fields to their Chalk namesFlorian Diebold2021-03-141-1/+1
|
* Use chalk_ir::AssocTypeIdFlorian Diebold2021-03-131-1/+2
|
* Separate `Ty` and `TyKind` like in ChalkFlorian Diebold2021-03-131-4/+5
| | | | | Currently `Ty` just wraps `TyKind`, but this allows us to change most places to already use `intern` / `interned`.
* Introduce Ty::AliasLukas Wirth2021-03-011-2/+3
|
* Being Ty::InferenceVar closes to chalk equivalentLukas Wirth2021-03-011-2/+4
|
* Rename ra_hir_ty -> hir_tyAleksey Kladov2020-08-131-0/+131