Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Have InferenceContext contain an InferenceResult instead of duplicating all ↵ | Florian Diebold | 2019-07-14 | 1 | -36/+19 | |
| | | | | fields | |||||
* | Some renamings for clarity | Florian Diebold | 2019-07-14 | 8 | -24/+27 | |
| | ||||||
* | Fixed request comments | Alexander Andreev | 2019-07-14 | 2 | -66/+72 | |
| | ||||||
* | Fixed comments | Alexander Andreev | 2019-07-13 | 1 | -2/+2 | |
| | ||||||
* | More resolution modules with attribute path | Alexander Andreev | 2019-07-13 | 2 | -4/+521 | |
| | | | | #1211 | |||||
* | complete fields in enum variants | Ekaterina Babshukova | 2019-07-12 | 4 | -1/+28 | |
| | ||||||
* | make Parse fields private | Aleksey Kladov | 2019-07-12 | 4 | -5/+6 | |
| | | | | this is in preparation for the new rowan API | |||||
* | fix profile name | Aleksey Kladov | 2019-07-09 | 1 | -1/+1 | |
| | ||||||
* | Merge #1515 | bors[bot] | 2019-07-09 | 10 | -117/+285 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | 1515: Trait environment r=matklad a=flodiebold This adds the environment, i.e. the set of `where` clauses in scope, when solving trait goals. That means that e.g. in ```rust fn foo<T: SomeTrait>(t: T) {} ``` , we are able to complete methods of `SomeTrait` on the `t`. This affects the trait APIs quite a bit (since every method that needs to be able to solve for some trait needs to get this environment somehow), so I thought I'd do it rather sooner than later ;) Co-authored-by: Florian Diebold <[email protected]> | |||||
| * | Unify `normalize` and `implements` to simplify code | Florian Diebold | 2019-07-08 | 8 | -105/+66 | |
| | | ||||||
| * | Use environment for associated type normalization as well | Florian Diebold | 2019-07-08 | 7 | -20/+52 | |
| | | ||||||
| * | Start handling environment in trait resolution | Florian Diebold | 2019-07-08 | 6 | -14/+103 | |
| | | | | | | | | | | I.e. if we are inside a function with some where clauses, we assume these where clauses hold. | |||||
| * | Refactor a bit & introduce Environment struct | Florian Diebold | 2019-07-08 | 7 | -21/+107 | |
| | | ||||||
* | | Merge #1512 | bors[bot] | 2019-07-09 | 3 | -17/+106 | |
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1512: Infer ? operator r=unrealhoang a=unrealhoang Logical continuation of https://github.com/rust-analyzer/rust-analyzer/pull/1501 cc https://github.com/rust-analyzer/rust-analyzer/issues/1426 Co-authored-by: Unreal Hoang <[email protected]> | |||||
| * | | beautify tests | Unreal Hoang | 2019-07-09 | 1 | -20/+36 | |
| | | | ||||||
| * | | use namespaced consts for KnownName | Unreal Hoang | 2019-07-08 | 1 | -12/+10 | |
| | | | ||||||
| * | | projection over std::ops::Try::Ok to infer try/? | Unreal Hoang | 2019-07-08 | 3 | -2/+77 | |
| | | | ||||||
* | | | Look for the fXX_runtime lang items during method resolution. | Marco Groppo | 2019-07-08 | 1 | -4/+6 | |
| |/ |/| | ||||||
* | | Remove unused dependencies | Shotaro Yamada | 2019-07-08 | 1 | -2/+0 | |
|/ | ||||||
* | cargo format | Muhammad Mominul Huque | 2019-07-07 | 6 | -14/+14 | |
| | ||||||
* | Constify KnownName's | Muhammad Mominul Huque | 2019-07-07 | 9 | -154/+72 | |
| | ||||||
* | Merge #1501 | bors[bot] | 2019-07-07 | 5 | -35/+170 | |
|\ | | | | | | | | | | | | | | | 1501: Infer for loop variable r=flodiebold a=unrealhoang My take on https://github.com/rust-analyzer/rust-analyzer/issues/1425 Co-authored-by: Unreal Hoang <[email protected]> | |||||
| * | add projection to infer for loop variable | Unreal Hoang | 2019-07-07 | 5 | -35/+170 | |
| | | ||||||
* | | Merge #1499 | bors[bot] | 2019-07-07 | 6 | -108/+240 | |
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | 1499: processing attribute #[path] of module r=matklad a=andreevlex support two cases - simple name file `foo.rs` - declaration in mod.rs #1211 Co-authored-by: Alexander Andreev <[email protected]> | |||||
| * | Moved module resolution test in mods.rs | Alexander Andreev | 2019-07-07 | 4 | -193/+195 | |
| | | ||||||
| * | Added support attribute path in resolusion module fn | Alexander Andreev | 2019-07-06 | 2 | -5/+119 | |
| | | ||||||
| * | Added extract path attribute for current module | Alexander Andreev | 2019-07-06 | 3 | -6/+22 | |
| | | | | | | | | #1211 | |||||
* | | Make EnumVariant a GenericDef and simplify some code | Florian Diebold | 2019-07-06 | 4 | -14/+21 | |
| | | ||||||
* | | Add trait obligations for where clauses when calling functions/methods | Florian Diebold | 2019-07-06 | 7 | -34/+156 | |
|/ | | | | | E.g. if we call `foo<T: Into<u32>>(x)`, that adds an obligation that `x: Into<u32>`, etc. | |||||
* | Merge #1495 | bors[bot] | 2019-07-05 | 1 | -1/+17 | |
|\ | | | | | | | | | | | | | | | 1495: use correct file for diagnostics r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | use correct file for diagnostics | Aleksey Kladov | 2019-07-05 | 1 | -1/+17 | |
| | | | | | | | | closes #1475 | |||||
* | | Merge #1494 | bors[bot] | 2019-07-05 | 1 | -1/+6 | |
|\| | | | | | | | | | | | | | | | 1494: properly restrict diagnostics to a single file r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | properly restrict diagnostics to a single file | Aleksey Kladov | 2019-07-05 | 1 | -1/+6 | |
| | | ||||||
* | | Clippy trivially_copy_pass_by_ref | Jeremy Kolb | 2019-07-05 | 7 | -17/+17 | |
|/ | ||||||
* | Merge #1491 | bors[bot] | 2019-07-05 | 2 | -17/+17 | |
|\ | | | | | | | | | | | | | | | | | | | 1491: More clippy r=matklad a=kjeremy A few more clippy changes. I'm a little unsure of the second commit. It's the trivially_copy_pass_by_ref lint and there are a number of places in the code we could use it if it makes sense. Co-authored-by: Jeremy Kolb <[email protected]> | |||||
| * | &self -> self | Jeremy Kolb | 2019-07-05 | 1 | -13/+13 | |
| | | | | | | | | https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref | |||||
| * | Clippy changes | Jeremy Kolb | 2019-07-05 | 2 | -4/+4 | |
| | | ||||||
* | | Fix clippy::redundant_clone | Shotaro Yamada | 2019-07-05 | 2 | -3/+2 | |
|/ | ||||||
* | Some clippy fixes for 1.36 | Jeremy Kolb | 2019-07-04 | 9 | -30/+24 | |
| | ||||||
* | Merge #1486 | bors[bot] | 2019-07-04 | 35 | -240/+267 | |
|\ | | | | | | | | | | | | | | | 1486: allow rustfmt to reorder imports r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | allow rustfmt to reorder imports | Aleksey Kladov | 2019-07-04 | 35 | -240/+267 | |
| | | | | | | | | | | | | 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 | |||||
* | | Fixed request changes | Alexander Andreev | 2019-07-03 | 2 | -6/+5 | |
| | | ||||||
* | | Move resolve raw name in name.rs | Alexander Andreev | 2019-07-03 | 3 | -11/+40 | |
| | | | | | | | | Added test for check module resolution with raw name | |||||
* | | Added resolve submodules with raw name | Alexander Andreev | 2019-07-03 | 1 | -0/+9 | |
|/ | | | | #1211 | |||||
* | Add completion for type aliases | Shotaro Yamada | 2019-07-02 | 1 | -0/+4 | |
| | ||||||
* | put source maps first for better stats | Aleksey Kladov | 2019-06-30 | 1 | -6/+6 | |
| | ||||||
* | print memory usage for queries | Aleksey Kladov | 2019-06-30 | 1 | -0/+4 | |
| | ||||||
* | Complete associated methods on enums (and unions) as well | Florian Diebold | 2019-06-29 | 1 | -0/+4 | |
| | ||||||
* | make sure that CrateDefMap is independent from syntax | Aleksey Kladov | 2019-06-26 | 6 | -48/+54 | |
| | ||||||
* | cache chalk queries | Aleksey Kladov | 2019-06-26 | 3 | -194/+240 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This gives a significant speedup, because chalk will call these functions several times even withing a single revision. The only significant one here is `impl_data`, but I figured it might be good to cache others just for consistency. The results I get are: Before: from scratch: 16.081457952s no change: 15.846493ms trivial change: 352.95592ms comment change: 361.998408ms const change: 457.629212ms After: from scratch: 14.910610278s no change: 14.934647ms trivial change: 85.633023ms comment change: 96.433023ms const change: 171.543296ms Seems like a nice win! |