aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src/ty/infer
Commit message (Collapse)AuthorAgeFilesLines
* Fix handling of the binders in dyn/impl TraitFlorian Diebold2019-11-161-10/+12
| | | | | | | | | We need to be more careful now when substituting bound variables (previously, we didn't have anything that used bound variables except Chalk, so it was not a problem). This is obviously quite ad-hoc; Chalk has more infrastructure for handling this in a principled way, which we maybe should adopt.
* Reduce duplication between uncertain floats & intsAleksey Kladov2019-11-131-15/+15
|
* Remove owner from BodyAleksey Kladov2019-11-121-5/+3
|
* Move definition of exprs to hir_defAleksey Kladov2019-11-121-2/+2
|
* Don't reexport generics from HIRAleksey Kladov2019-11-111-1/+2
|
* Move Namespace enum closer to usageAleksey Kladov2019-11-042-5/+5
|
* Remove last traces of nameres from hirAleksey Kladov2019-11-031-2/+1
|
* Various review fixesFlorian Diebold2019-11-011-11/+7
|
* Refactor to unify with method resolutionFlorian Diebold2019-11-011-108/+27
|
* Record assoc item resolutionFlorian Diebold2019-11-011-1/+3
|
* Insert type vars before doing assoc item resolutionFlorian Diebold2019-11-011-0/+3
|
* Get trait assoc item resolution mostly workingFlorian Diebold2019-11-011-8/+98
|
* push name down to hir_expandAleksey Kladov2019-10-301-4/+2
|
* remove forward pointer for type_refAleksey Kladov2019-10-301-2/+1
|
* remove forward pointer to PathAleksey Kladov2019-10-302-4/+8
|
* remove forward pointer for nameAleksey Kladov2019-10-301-1/+2
|
* Bump depsLaurențiu Nicola2019-10-171-1/+3
|
* make_mut_sliceShotaro Yamada2019-10-141-11/+7
|
* Avoid cloning `Arc<[T]>` into a vec if possibleShotaro Yamada2019-10-141-8/+15
|
* Split up infer.rs furtherFlorian Diebold2019-10-123-0/+1174
| | | | | | - coercion logic goes to `coerce.rs` - expression inference goes to `expr.rs` - pattern inference goes to `pat.rs`
* Add SubstsBuilderFlorian Diebold2019-09-262-20/+14
| | | | + further refactoring.
* Better handle never type and branch merginguHOOCCOOHu2019-09-251-0/+1
| | | | Split out tests for never type to another file
* Resolve trait associated itemsFlorian Diebold2019-09-251-4/+51
| | | | E.g. `Default::default` or `<Foo as Default>::default`.
* Split off path expression inference code into submoduleFlorian Diebold2019-09-231-0/+195
|
* Make type walking infrastructure a bit nicerFlorian Diebold2019-09-031-1/+1
| | | | | If/when we switch to using Chalk's Ty, we'll need to replace this by its `Fold` trait, but I didn't want to import the whole thing just yet.
* Unify `normalize` and `implements` to simplify codeFlorian Diebold2019-07-081-20/+12
|
* Use environment for associated type normalization as wellFlorian Diebold2019-07-081-4/+8
|
* Refactor a bit & introduce Environment structFlorian Diebold2019-07-081-4/+16
|
* add projection to infer for loop variableUnreal Hoang2019-07-071-1/+28
|
* Some clippy fixes for 1.36Jeremy Kolb2019-07-041-2/+2
|
* allow rustfmt to reorder importsAleksey Kladov2019-07-041-2/+2
| | | | | | This wasn't a right decision in the first place, the feature flag was broken in the last rustfmt release, and syntax highlighting of imports is more important anyway
* Fix crash with int vars in canonicalizationFlorian Diebold2019-05-211-1/+6
|
* Handle recursive types in canonicalizationFlorian Diebold2019-05-041-3/+13
|
* Make canonicalization API a bit nicerFlorian Diebold2019-05-041-16/+40
|
* Canonicalize before doing method resolutionFlorian Diebold2019-05-041-8/+16
|
* Implement Deref<Target=[Ty]> for SubstsFlorian Diebold2019-05-041-1/+0
|
* Chalk integrationFlorian Diebold2019-05-041-0/+81
- add proper canonicalization logic - add conversions from/to Chalk IR