aboutsummaryrefslogtreecommitdiff
path: root/crates/hir_ty
Commit message (Collapse)AuthorAgeFilesLines
* Remove assertion in impl collectionFlorian Diebold2021-04-111-4/+3
| | | | | | | This condition should always be true for *valid* code, but of course there might be invalid code or things that we can't currently resolve. Fixes #8464.
* Merge #8465bors[bot]2021-04-111-3/+3
|\ | | | | | | | | | | | | | | | | | | | | | | 8465: Include more info in assert r=jonas-schievink a=jonas-schievink This helped find https://github.com/rust-analyzer/rust-analyzer/issues/8464 changelog skip bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * Include more info in assertJonas Schievink2021-04-111-3/+3
| |
* | Support macros in pattern positionJonas Schievink2021-04-112-2/+28
|/
* Respect test style guidelines in tests::traitsLukas Wirth2021-04-101-698/+656
|
* Add test for binary op return ty with adtLukas Wirth2021-04-101-0/+47
|
* Add manual ops::Add impls to test::traits::closure_2Lukas Wirth2021-04-101-20/+46
|
* Implement more precise binary op return type predictionLukas Wirth2021-04-102-17/+51
|
* Resolve prelude and crate root names in the root DefMapJonas Schievink2021-04-091-0/+30
|
* More cleanups / module docsFlorian Diebold2021-04-096-10/+12
|
* More cleanupsFlorian Diebold2021-04-093-38/+29
|
* More moving stuff aroundFlorian Diebold2021-04-094-78/+74
|
* Move some more stuff to better placesFlorian Diebold2021-04-092-100/+93
|
* Move ToChalk -> mappingFlorian Diebold2021-04-0910-37/+76
|
* Reorganize hir_ty modulesFlorian Diebold2021-04-0910-100/+73
| | | | | Chalk isn't really a 'traits' thing anymore, so it doesn't make sense to have all the Chalk-related stuff in submodules of `traits`.
* Merge #8406bors[bot]2021-04-092-19/+64
|\ | | | | | | | | | | | | | | 8406: Improve indexing of impls r=flodiebold a=flodiebold Store impls for e.g. &Foo with the ones for Foo instead of the big "other" bucket. This can improve performance and simplifies the HIR impl search a bit. Co-authored-by: Florian Diebold <[email protected]>
| * Improve indexing of implsFlorian Diebold2021-04-092-19/+64
| | | | | | | | | | | | Store impls for e.g. &Foo with the ones for Foo instead of the big "other" bucket. This can improve performance and simplifies the HIR impl search a bit.
* | Fix crash on syn involving lifetimes returned by ChalkFlorian Diebold2021-04-093-6/+77
|/ | | | | | | | | | 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.
* CleanupFlorian Diebold2021-04-082-24/+19
|
* Intern VariancesFlorian Diebold2021-04-081-2/+3
| | | | This may be a slight performance improvement.
* Don't intern ProgramClause at allFlorian Diebold2021-04-081-2/+2
| | | | This seems to work best performance/memory-wise.
* Intern QuantifiedWhereClausesFlorian Diebold2021-04-081-2/+3
| | | | Slight performance and memory usage improvement.
* Intern ProgramClausesFlorian Diebold2021-04-081-2/+3
|
* Intern CanonicalVarKindsFlorian Diebold2021-04-081-2/+3
| | | | Slight savings in performance and memory.
* Intern consts & lifetimesFlorian Diebold2021-04-082-7/+20
| | | | Slight memory usage reduction.
* Intern typesFlorian Diebold2021-04-081-3/+7
| | | | Performance about the same, memory reduced by ~5%.
* Intern SubstitutionsFlorian Diebold2021-04-087-26/+33
| | | | (Costs a bit of performance, reduces memory usage on RA by ~10%.)
* Intern VariableKindsFlorian Diebold2021-04-081-4/+14
|
* Remove unusedFlorian Diebold2021-04-0814-69/+20
|
* Replace `make_binders` by the now equivalent `make_only_type_binders`Florian Diebold2021-04-082-35/+22
|
* Remove identity impls for ToChalkFlorian Diebold2021-04-084-215/+21
|
* Fix `Canonicalized::apply_solution`Florian Diebold2021-04-081-13/+16
| | | | | | Now that we're using Chalk's `substitute` which actually knows about lifetimes, the hack doesn't work anymore, but we can put in a proper lifetime.
* Fix missing match armsFlorian Diebold2021-04-084-2/+20
|
* Fix remaining `interned_mut` callFlorian Diebold2021-04-081-4/+6
|
* Replace remaining `fold` callsFlorian Diebold2021-04-083-59/+104
|
* Replace some `fold` callsFlorian Diebold2021-04-084-47/+53
|
* Fix shifted_{in,out} callsFlorian Diebold2021-04-085-11/+11
|
* Fix subst_prefixFlorian Diebold2021-04-081-1/+4
|
* Get rid of walk_mut [not compiling]Florian Diebold2021-04-081-272/+0
|
* Fix TyBuilder methodsFlorian Diebold2021-04-081-5/+5
|
* Impl Fold for CallableSigFlorian Diebold2021-04-081-0/+18
|
* Add HasInterner boundsFlorian Diebold2021-04-086-14/+35
|
* Allow unusedFlorian Diebold2021-04-081-0/+3
|
* Remove obsolete Cast implsFlorian Diebold2021-04-081-47/+0
|
* Make ToChalk implementations identityFlorian Diebold2021-04-082-272/+42
|
* Replace all the types by their Chalk versionsFlorian Diebold2021-04-083-554/+32
|
* Merge #8409bors[bot]2021-04-0714-66/+73
|\ | | | | | | | | | | | | | | 8409: Various remaining fixes for Chalk IR move r=flodiebold a=flodiebold CC #8313 Co-authored-by: Florian Diebold <[email protected]>
| * Fix return type of Substitution::internedFlorian Diebold2021-04-073-3/+3
| |
| * InEnvironment::new takes a referenceFlorian Diebold2021-04-074-5/+5
| |
| * Make Canonical::new a free-standing functionFlorian Diebold2021-04-071-10/+12
| |