Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 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 |
| | |||||
* | Introduce ArenaMap | Florian Diebold | 2019-01-06 | 1 | -4/+4 |
| | |||||
* | Sort ranges in type inference tests | Florian Diebold | 2019-01-06 | 1 | -12/+13 |
| | | | | | Also rename the files to remove the numbers (they don't serve a purpose now that there are only the data files). | ||||
* | Use HIR Expr for type inference | Florian Diebold | 2019-01-06 | 1 | -3/+21 |
| | | | | | Now we can reuse the type inference inside a function when typing whitespace etc. :) | ||||
* | Merge #440 | bors[bot] | 2019-01-06 | 1 | -0/+24 |
|\ | | | | | | | | | | | | | | | | | | | 440: Implement type inference for boolean operators r=flodiebold a=marcusklaas Tried implementing the easiest part of https://github.com/rust-analyzer/rust-analyzer/issues/390. Hope this is somewhat close to what the intent of the issue was. Found it surprisingly easy to find my way around the repository - it's well organized! Very grateful for any pointers. Co-authored-by: Marcus Klaas de Vries <[email protected]> | ||||
| * | Touch up type inference for boolean operators | Marcus Klaas de Vries | 2019-01-06 | 1 | -0/+7 |
| | | | | | | | | | | Also try to infer its subexpressions and set type expectations whenever possible. | ||||
| * | Implement type inference for boolean operators | Marcus Klaas de Vries | 2019-01-05 | 1 | -0/+17 |
| | | |||||
* | | Add test for invalidation of inferred types when typing inside function | Florian Diebold | 2019-01-05 | 1 | -0/+44 |
|/ | | | | This currently fails, but should work once we have hir::Expr. |