Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge #701 | bors[bot] | 2019-01-30 | 1 | -1/+3 |
|\ | | | | | | | | | | | | | | | | | | | 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 expectations | Marcus Klaas de Vries | 2019-01-30 | 1 | -0/+1 |
| | | |||||
| * | Infer type of match guard | Marcus Klaas de Vries | 2019-01-28 | 1 | -1/+2 |
| | | |||||
* | | Added support for primitive types type inference when using std::ops::Not | WizardOfMenlo | 2019-01-28 | 1 | -0/+5 |
| | | |||||
* | | Process second review | Marcus Klaas de Vries | 2019-01-27 | 1 | -4/+2 |
| | | |||||
* | | Use type information from the turbofish | Marcus Klaas de Vries | 2019-01-27 | 1 | -0/+3 |
| | | |||||
* | | First attempt at generic type inference for fns | Marcus Klaas de Vries | 2019-01-27 | 1 | -0/+22 |
|/ | |||||
* | Add marks | Florian Diebold | 2019-01-26 | 1 | -0/+5 |
| | |||||
* | Handle cycles in type vars | Florian Diebold | 2019-01-26 | 1 | -0/+27 |
| | | | | This might be the cause of #587. | ||||
* | fix AST for if expressions | Aleksey Kladov | 2019-01-26 | 1 | -0/+17 |
| | | | | then is not always a block... | ||||
* | rename source_file -> parse | Aleksey Kladov | 2019-01-26 | 1 | -1/+1 |
| | |||||
* | rename FilesDatabase -> SourceDatabase | Aleksey Kladov | 2019-01-26 | 1 | -1/+1 |
| | |||||
* | fold syntax database into files database | Aleksey Kladov | 2019-01-26 | 1 | -1/+1 |
| | |||||
* | Fix type inference of binops on int/float variables | Florian Diebold | 2019-01-25 | 1 | -0/+13 |
| | | | | Fixes #651. | ||||
* | move SyntaxPtr to ra_syntax | Aleksey Kladov | 2019-01-23 | 1 | -1/+1 |
| | |||||
* | Use insta for ty tests | Florian Diebold | 2019-01-21 | 1 | -47/+29 |
| | |||||
* | Fix panic trying to get substs on unknown type | Florian Diebold | 2019-01-21 | 1 | -0/+16 |
| | | | | Fixes #585. | ||||
* | Fix panic on inferring field access on an enum | Florian Diebold | 2019-01-20 | 1 | -0/+14 |
| | |||||
* | Make generics work in struct patterns | Florian Diebold | 2019-01-19 | 1 | -0/+26 |
| | |||||
* | Add some tests | Florian Diebold | 2019-01-19 | 1 | -0/+63 |
| | |||||
* | Fixup annotated bindings | Marcus Klaas de Vries | 2019-01-19 | 1 | -1/+5 |
| | |||||
* | Add initial (flawed) implementation of binding annotations | Marcus Klaas de Vries | 2019-01-19 | 1 | -0/+4 |
| | |||||
* | Infer pattern types for lambdas and loops | Marcus Klaas de Vries | 2019-01-19 | 1 | -0/+10 |
| | |||||
* | Implement unlabeled struct field pattern inference | Marcus Klaas de Vries | 2019-01-19 | 1 | -0/+5 |
| | |||||
* | Add crude implementation of tuplestruct pattern inference | Marcus Klaas de Vries | 2019-01-19 | 1 | -14/+22 |
| | |||||
* | Work on type inference for ADT patterns | Marcus Klaas de Vries | 2019-01-19 | 1 | -1/+4 |
| | |||||
* | Implement type inference for tuples and refs | Marcus Klaas de Vries | 2019-01-19 | 1 | -0/+11 |
| | |||||
* | Add additional pattern variants | Marcus Klaas de Vries | 2019-01-19 | 1 | -0/+15 |
| | |||||
* | :arrow_up: salsa | Aleksey Kladov | 2019-01-17 | 1 | -3/+1 |
| | |||||
* | Fix test case invalid syntax | Hirokazu Hata | 2019-01-16 | 1 | -2/+2 |
| | |||||
* | Fix infer array test | Hirokazu Hata | 2019-01-16 | 1 | -6/+9 |
| | |||||
* | Add infer array test | Hirokazu Hata | 2019-01-16 | 1 | -0/+23 |
| | |||||
* | Implement rudimentary type inference for unary operators | Marcus Klaas de Vries | 2019-01-15 | 1 | -0/+23 |
| | |||||
* | remove Cancelable from type inference | Aleksey Kladov | 2019-01-15 | 1 | -3/+3 |
| | |||||
* | remove Cancelable from fn_scopes | Aleksey Kladov | 2019-01-15 | 1 | -1/+1 |
| | |||||
* | remove Cancelable from source binders | Aleksey Kladov | 2019-01-15 | 1 | -6/+2 |
| | |||||
* | Fix type inference for raw (byte) strings | Marcus Klaas de Vries | 2019-01-14 | 1 | -3/+9 |
| | |||||
* | Fixup tests | Marcus Klaas de Vries | 2019-01-14 | 1 | -3/+2 |
| | |||||
* | don't try to treat arrays and tuples as literals | Marcus Klaas de Vries | 2019-01-14 | 1 | -2/+0 |
| | |||||
* | Use type variables to determine exact type for ambiguous numeric literals | Marcus Klaas de Vries | 2019-01-14 | 1 | -0/+1 |
| | |||||
* | Implement type inference for literals (WIP) | Marcus Klaas de Vries | 2019-01-14 | 1 | -0/+20 |
| | |||||
* | Fix tuple test case | Hirokazu Hata | 2019-01-13 | 1 | -1/+8 |
| | |||||
* | Add infer tuple test | Hirokazu Hata | 2019-01-13 | 1 | -0/+12 |
| | |||||
* | Implement basic inherent method resolution | Florian Diebold | 2019-01-12 | 1 | -0/+26 |
| | |||||
* | Fix assertion error in unification (hopefully) | Florian Diebold | 2019-01-11 | 1 | -0/+12 |
| | | | | | | | Currently, all types that we handle during inference need to be resolved as far as possible at the time. It's maybe too brittle of an invariant; I need to think how we can do this better. This should fix #484 though, I hope (if it's the same case as I managed to reproduce). | ||||
* | Implement type inference for enum variants | Marcus Klaas de Vries | 2019-01-10 | 1 | -0/+16 |
| | |||||
* | Fix typos in ARCHITECTURE.md and a number of crates | Marcus Klaas de Vries | 2019-01-09 | 1 | -1/+1 |
| | | | | specifically: gen_lsp_server, ra_arena, ra_cli, ra_db, ra_hir | ||||
* | Implement type inference for more binary operators | Marcus Klaas de Vries | 2019-01-07 | 1 | -5/+8 |
| | | | | | Mostly just for primitive numeric types such as u32 and f64. Not yet a general solution using trait resolution. | ||||
* | Implement autoderef for field accesses | Florian Diebold | 2019-01-07 | 1 | -1/+32 |
| | |||||
* | if let -> match | Florian Diebold | 2019-01-07 | 1 | -8/+6 |
| |