Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Normalize assoc types in more places | Florian Diebold | 2019-08-12 | 2 | -12/+27 |
| | |||||
* | Improve debug logging a bit | Florian Diebold | 2019-08-12 | 2 | -4/+18 |
| | |||||
* | Normalize associated types during inference | Florian Diebold | 2019-08-12 | 3 | -9/+25 |
| | |||||
* | Lower fully qualified associated type paths | Florian Diebold | 2019-08-12 | 5 | -23/+128 |
| | | | | I.e. `<T as Trait>::Foo`. | ||||
* | Add representations of associated types | Florian Diebold | 2019-08-12 | 3 | -0/+113 |
| | | | | | | | | | | | | This adds three different representations, copied from the Chalk model: - `Ty::Projection` is an associated type projection written somewhere in the code, like `<Foo as Trait>::Bar`. - `Ty::UnselectedProjection` is similar, but we don't know the trait yet (`Foo::Bar`). - The above representations are normalized to their actual types during type inference. When that isn't possible, for example for `T::Item` inside an `fn foo<T: Iterator>`, the type is normalized to an application type with `TypeCtor::AssociatedType`. | ||||
* | Add another test for assoc type resolution | Florian Diebold | 2019-08-12 | 1 | -6/+46 |
| | |||||
* | Use Source in Diagnostic and implement | Evgenii P | 2019-08-12 | 2 | -24/+16 |
| | |||||
* | Drop support for old extendSelection API | Aleksey Kladov | 2019-08-12 | 3 | -44/+1 |
| | | | | | | Emacs now handles this via native LSP request https://github.com/emacs-lsp/lsp-mode/commit/dc86bbb227147aa8141e690ad5648fdbd2ebdb9f | ||||
* | Always set the runnable name | Kirill Bulatov | 2019-08-09 | 1 | -11/+11 |
| | |||||
* | Extract common logic | Kirill Bulatov | 2019-08-09 | 1 | -55/+42 |
| | |||||
* | Show backtraces in lens runnables | Kirill Bulatov | 2019-08-09 | 1 | -1/+5 |
| | |||||
* | Move numeric names inside of `NameRef` | Aleksey Kladov | 2019-08-09 | 10 | -37/+52 |
| | |||||
* | Make name_ref to accept numeric names optionally | Evgenii P | 2019-08-09 | 5 | -9/+9 |
| | |||||
* | Parse tuple struct field initialization | Evgenii P | 2019-08-09 | 4 | -8/+31 |
| | |||||
* | Change macro to function | Evgenii P | 2019-08-09 | 1 | -15/+13 |
| | |||||
* | rustfmt | Evgenii P | 2019-08-09 | 1 | -10/+10 |
| | |||||
* | Reduce code duplication in lexer by introducing small macro | Evgenii P | 2019-08-09 | 1 | -20/+17 |
| | |||||
* | Merge #1661 | bors[bot] | 2019-08-08 | 9 | -1/+571 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1661: Parse function parameters attributes r=matklad a=eupn Fixes #1397. The [RFC-2565](https://github.com/rust-lang/rfcs/blob/master/text/2565-formal-function-parameter-attributes.md) specifies `#[attributes]` to function parameters: ```rust fn foo(#[attr] a, #[unused] b, #[must_use] ...) { // ... } ``` This PR adds those attributes into grammar and to the parser, extending corresponding inline tests. Co-authored-by: Evgenii P <[email protected]> | ||||
| * | Fix parser tests according to review | Evgenii P | 2019-08-08 | 19 | -498/+580 |
| | | |||||
| * | Deduplicate while loop break condition | Evgenii P | 2019-08-08 | 1 | -2/+2 |
| | | |||||
| * | Fix parser to correctly consume outer attrs before ellipsis param | Evgenii P | 2019-08-07 | 1 | -0/+4 |
| | | |||||
| * | Fix variadic arg inline test | Evgenii P | 2019-08-07 | 3 | -25/+25 |
| | | |||||
| * | Add function parameters attributes | Evgenii P | 2019-08-07 | 15 | -21/+505 |
| | | |||||
* | | assoc types bounds | Aleksey Kladov | 2019-08-07 | 3 | -0/+63 |
| | | |||||
* | | implement while let desugaring | Aleksey Kladov | 2019-08-07 | 4 | -21/+76 |
| | | |||||
* | | refactor if-let lowering | Aleksey Kladov | 2019-08-07 | 1 | -19/+25 |
| | | | | | | | | mainly to get rid of unwraps | ||||
* | | refactor if lowering | Aleksey Kladov | 2019-08-07 | 1 | -17/+14 |
|/ | |||||
* | install server first | Aleksey Kladov | 2019-08-07 | 1 | -3/+3 |
| | | | | closes #1658 | ||||
* | Merge #1652 | bors[bot] | 2019-08-06 | 3 | -71/+43 |
|\ | | | | | | | | | | | | | | | | | | | | | | | 1652: Improve type hints behavior r=matklad a=SomeoneToIgnore This PR fixed the following type hints issues: * Restructures the `InlayKind` enum contents based on the discussion here: https://github.com/rust-analyzer/rust-analyzer/pull/1606#issuecomment-515968055 * Races described in #1639 * Caches the latest decorations received for each file to show them the next time the file is opened (instead of a new server request) Co-authored-by: Kirill Bulatov <[email protected]> | ||||
| * | Style and test fixes | Kirill Bulatov | 2019-08-04 | 1 | -28/+28 |
| | | |||||
| * | Use proper inlay kinds | Kirill Bulatov | 2019-08-04 | 3 | -43/+15 |
| | | |||||
* | | fix tests | Aleksey Kladov | 2019-08-06 | 1 | -2/+2 |
| | | |||||
* | | allow to exclude certain files and directories | Aleksey Kladov | 2019-08-06 | 3 | -14/+29 |
| | | |||||
* | | push glob errors outwards | Aleksey Kladov | 2019-08-06 | 1 | -6/+7 |
| | | |||||
* | | rename config | Aleksey Kladov | 2019-08-06 | 4 | -19/+14 |
| | | |||||
* | | introduce ra_vfs_glob crate | Aleksey Kladov | 2019-08-06 | 11 | -142/+135 |
| | | | | | | | | It manages exclusion rules for the vfs crate | ||||
* | | cleanup imports | Aleksey Kladov | 2019-08-06 | 1 | -5/+2 |
| | | |||||
* | | cleanup | Aleksey Kladov | 2019-08-06 | 6 | -9/+10 |
| | | |||||
* | | rename | Aleksey Kladov | 2019-08-06 | 4 | -31/+31 |
| | | |||||
* | | use Conv for severity | Aleksey Kladov | 2019-08-06 | 2 | -20/+21 |
| | | |||||
* | | Update crates/ra_cli/src/analysis_stats.rs | Laurențiu Nicola | 2019-08-05 | 1 | -1/+1 |
| | | | | | | Co-Authored-By: Aleksey Kladov <[email protected]> | ||||
* | | Optimize Parser::is_composite a little | Laurențiu Nicola | 2019-08-05 | 1 | -19/+35 |
| | | |||||
* | | Display the parsing time in ra_cli analysis-stats | Laurențiu Nicola | 2019-08-05 | 1 | -1/+5 |
| | | |||||
* | | Merge #1642 | bors[bot] | 2019-08-05 | 1 | -0/+17 |
|\ \ | |/ |/| | | | | | | | | | | | 1642: Add test for #1540 r=matklad a=kjeremy Co-authored-by: Jeremy Kolb <[email protected]> | ||||
| * | Add test for #1540 | Jeremy Kolb | 2019-08-03 | 1 | -0/+17 |
| | | |||||
* | | Merge #1634 | bors[bot] | 2019-08-04 | 3 | -10/+104 |
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1634: Implement .await completion for futures r=flodiebold a=eupn Closes #1263 with completion for `.await` syntax for types that are implementing `std::future::Future` trait. r? @flodiebold Co-authored-by: Evgenii P <[email protected]> | ||||
| * | | rustfmt | Evgenii P | 2019-08-04 | 1 | -3/+1 |
| | | | |||||
| * | | Idiomatic return | Evgenii P | 2019-08-04 | 1 | -1/+1 |
| | | | |||||
| * | | Employ early return pattern more | Evgenii P | 2019-08-04 | 2 | -25/+27 |
| | | | |||||
| * | | source_binder.rs: fix order of imports | Evgenii P | 2019-08-04 | 1 | -9/+10 |
| | | |