aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src/ty
Commit message (Collapse)AuthorAgeFilesLines
* Implement basic support for Associated Methods and ConstantsVille Penttinen2019-02-216-0/+222
| | | | | | | This is done in `infer_path_expr`. When `Resolver::resolve_path` returns `PartiallyResolved`, we use the returned `Resolution` together with the given `segment_index` to check if we can find something matching the segment at segment_index in the impls for that particular type.
* Merge #852bors[bot]2019-02-182-34/+39
|\ | | | | | | | | | | | | | | 852: Handle != r=flodiebold a=matklad r? @flodiebold Co-authored-by: Aleksey Kladov <[email protected]>
| * handle != operatorAleksey Kladov2019-02-182-34/+39
| |
* | Handle tuple structs / enum variants properly in type inferenceFlorian Diebold2019-02-171-9/+9
|/
* Unify with the autorefed/autoderefed receiver type during method resolutionFlorian Diebold2019-02-173-5/+43
|
* Handle generic args for method callsFlorian Diebold2019-02-161-3/+3
|
* Handle impl generics in method callsFlorian Diebold2019-02-162-47/+47
|
* Add a test for impl genericsFlorian Diebold2019-02-162-0/+71
|
* Turn ImplBlock into a copy type just containing IDsFlorian Diebold2019-02-161-18/+11
| | | | | | | This makes it more like the other code model types. Also make Module::definition_source/declaration_source return HirFileIds, to make them more like the other source functions.
* Fix another crashFlorian Diebold2019-02-122-0/+31
|
* Implement completion for associated itemsLaurențiu Nicola2019-02-121-0/+20
|
* replace clone with copyAleksey Kladov2019-02-121-1/+1
|
* fix obsolete commentAleksey Kladov2019-02-121-2/+2
|
* Add comment and markFlorian Diebold2019-02-091-0/+1
|
* Fix another crash, and try harder to prevent stack overflowsFlorian Diebold2019-02-092-0/+55
|
* Fix another crash found when analyzing rustcFlorian Diebold2019-02-092-0/+31
|
* Fix handling of literal patternsFlorian Diebold2019-02-092-0/+28
| | | | | Wrap them in a LiteralPat node so they can be distinguished from literal expressions.
* Fix two crashes found by running inference on all of rustcFlorian Diebold2019-02-093-0/+60
|
* reformat the worldAleksey Kladov2019-02-082-27/+12
|
* Some clippy cleanupskjeremy2019-02-061-1/+1
|
* Test more Self inferencekjeremy2019-02-042-3/+13
|
* Use new Resolver API in type inferenceFlorian Diebold2019-02-014-36/+24
|
* Go To Implementation for Traitkjeremy2019-01-311-19/+48
|
* Merge #701bors[bot]2019-01-303-15/+26
|\ | | | | | | | | | | | | | | | | | | 701: Minor type inference tweaks r=flodiebold a=marcusklaas Pass down expectation for reference expressions and type the guard in match expressions. I wasn't able to add a test for the former addition because the type variable previously introduced would always resolve to the right type in the things I tried! Co-authored-by: Marcus Klaas de Vries <[email protected]>
| * Add test for passing on ref expectationsMarcus Klaas de Vries2019-01-302-4/+11
| |
| * Infer type of match guardMarcus Klaas de Vries2019-01-282-11/+15
| |
* | Use Crate instead of CrateIdAleksey Kladov2019-01-301-1/+1
| |
* | Go to Implementation for structs and enumsJeremy Kolb2019-01-301-3/+3
| |
* | Added support for primitive types type inference when using std::ops::NotWizardOfMenlo2019-01-282-12/+30
| |
* | Process second reviewMarcus Klaas de Vries2019-01-272-9/+7
| |
* | Use type information from the turbofishMarcus Klaas de Vries2019-01-273-6/+12
| |
* | Add a FnSig to Ty::FnDefMarcus Klaas de Vries2019-01-276-30/+30
| |
* | Add missing ty test snapshotMarcus Klaas de Vries2019-01-271-0/+23
| |
* | Add type params to FnSignatureMarcus Klaas de Vries2019-01-275-54/+54
| |
* | First attempt at generic type inference for fnsMarcus Klaas de Vries2019-01-271-0/+22
|/
* Add marksFlorian Diebold2019-01-261-0/+5
|
* Handle cycles in type varsFlorian Diebold2019-01-263-0/+62
| | | | This might be the cause of #587.
* fix AST for if expressionsAleksey Kladov2019-01-262-0/+34
| | | | then is not always a block...
* rename source_file -> parseAleksey Kladov2019-01-261-1/+1
|
* rename FilesDatabase -> SourceDatabaseAleksey Kladov2019-01-261-1/+1
|
* fold syntax database into files databaseAleksey Kladov2019-01-261-1/+1
|
* Fix type inference of binops on int/float variablesFlorian Diebold2019-01-252-0/+26
| | | | Fixes #651.
* new struct idAleksey Kladov2019-01-242-10/+10
|
* Functions use new id schemeAleksey Kladov2019-01-241-2/+2
|
* Change ids strategyAleksey Kladov2019-01-241-14/+12
| | | | | | | this is a part of larghish hir refactoring which aims to * replace per-source-root module trees with per crate trees * switch from a monotyped DedId to type-specific ids
* move SyntaxPtr to ra_syntaxAleksey Kladov2019-01-231-1/+1
|
* Update snapsJeremy A. Kolb2019-01-2224-96/+144
|
* Use insta for ty testsFlorian Diebold2019-01-2127-55/+157
|
* Fix panic trying to get substs on unknown typeFlorian Diebold2019-01-212-0/+24
| | | | Fixes #585.
* Fix panic on inferring field access on an enumFlorian Diebold2019-01-202-0/+18
|