Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Lower `Fn(X, Y) -> Z` paths | Florian Diebold | 2019-09-07 | 2 | -1/+7 |
| | |||||
* | switch to rustc_lexer crate | Aleksey Kladov | 2019-09-05 | 1 | -1/+1 |
| | |||||
* | better error recovery for use trees | Aleksey Kladov | 2019-09-05 | 3 | -1/+60 |
| | |||||
* | Merge #1743 | bors[bot] | 2019-09-05 | 2 | -0/+2 |
|\ | | | | | | | | | | | | | | | 1743: Support `#[macro_use]` on `extern crate` r=matklad a=uHOOCCOOHu Unfortunately, #1688 is still an issue. My guess is wrong :( Co-authored-by: uHOOCCOOHu <[email protected]> | ||||
| * | Support resolution of `#[macro_use] extern crate` | uHOOCCOOHu | 2019-08-31 | 2 | -0/+2 |
| | | |||||
* | | Correctly build BodySourceMap for macro-expanded expressions | Aleksey Kladov | 2019-09-03 | 1 | -2/+3 |
| | | |||||
* | | fix assists | Aleksey Kladov | 2019-09-02 | 1 | -0/+20 |
| | | |||||
* | | fix hir for new block syntax | Aleksey Kladov | 2019-09-02 | 4 | -6/+6 |
| | | |||||
* | | fix generated AST | Aleksey Kladov | 2019-09-02 | 3 | -3/+4 |
| | | |||||
* | | update test data | Aleksey Kladov | 2019-09-02 | 150 | -8970/+9245 |
| | | |||||
* | | always wrap block into an expression | Aleksey Kladov | 2019-09-02 | 2 | -11/+11 |
| | | |||||
* | | remove useless trait | Aleksey Kladov | 2019-09-02 | 3 | -9/+6 |
| | | |||||
* | | Add an expr_source method analogous to the source methods in the code model | Florian Diebold | 2019-09-02 | 1 | -3/+2 |
|/ | | | | ... and use that instead of exposing the source map. | ||||
* | Merge #1734 | bors[bot] | 2019-08-25 | 1 | -0/+7 |
|\ | | | | | | | | | | | | | | | 1734: Strip indents and empty lines in check_apply_diagnostic_fix_from_position r=matklad a=matklad Co-authored-by: Phil Ellison <[email protected]> | ||||
| * | Cast SyntaxNodePtr to AstPtr directly | Phil Ellison | 2019-08-25 | 1 | -0/+7 |
| | | |||||
* | | Generate and bless tests | Dylan MacKenzie | 2019-08-24 | 7 | -85/+227 |
| | | |||||
* | | Centralize `box` pattern tests in `patterns.rs` | Dylan MacKenzie | 2019-08-24 | 1 | -0/+6 |
| | | |||||
* | | Add `BoxPat` variant | Dylan MacKenzie | 2019-08-23 | 2 | -2/+40 |
|/ | |||||
* | rename struct -> record, pos -> tuple | Aleksey Kladov | 2019-08-23 | 43 | -421/+421 |
| | |||||
* | make ast object safe | Aleksey Kladov | 2019-08-23 | 1 | -2/+10 |
| | |||||
*-. | Merge #1721 #1723 | bors[bot] | 2019-08-22 | 2 | -1/+30 |
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1721: Impl/dyn trait r=flodiebold a=flodiebold This adds support for `impl Trait` and `dyn Trait` types as far as possible without Chalk. So we can represent them in the type system, and handle them in method resolution, but Chalk doesn't know about them yet. There's a small temporary hack here where we bypass Chalk during method resolution, so we can handle simple method calls on them and completion works. Fixes #1608. 1723: Make sysroot use `RUST_SRC_PATH` if set r=matklad a=bkchr Co-authored-by: Florian Diebold <[email protected]> Co-authored-by: Bastian Köcher <[email protected]> | ||||
| * | | Improve/fix type bound lowering | Florian Diebold | 2019-08-22 | 1 | -26/+29 |
| | | | |||||
| * | | Add `impl Trait` and `dyn Trait` types | Florian Diebold | 2019-08-22 | 2 | -1/+27 |
| |/ | | | | | | | | | | | | | - refactor bounds handling in the AST a bit - add HIR for bounds - add `Ty::Dyn` and `Ty::Opaque` variants and lower `dyn Trait` / `impl Trait` syntax to them | ||||
* / | Add test for nested box pattern | Dylan MacKenzie | 2019-08-22 | 2 | -12/+49 |
|/ | |||||
* | Don't add `?` bounds as real bounds | Aleksey Kladov | 2019-08-22 | 1 | -0/+12 |
| | | | | closes #1709 | ||||
* | :arrow_up: rustc_lexer | Aleksey Kladov | 2019-08-20 | 3 | -117/+75 |
| | |||||
* | remove ast::*Kind enums | Aleksey Kladov | 2019-08-19 | 2 | -353/+347 |
| | | | | With the new owned trees, we don't need an indirection here | ||||
* | use new quote-generated ast | Aleksey Kladov | 2019-08-18 | 2 | -1289/+1408 |
| | |||||
* | use quote! macro to generate grammar | Aleksey Kladov | 2019-08-18 | 1 | -27/+27 |
| | | | | | We already use syn"e elsewhere (transitively), so it make sense to cut down on the number of technologies and get rid of tera | ||||
* | deserialize grammar | Aleksey Kladov | 2019-08-18 | 1 | -53/+53 |
| | |||||
* | Introduce separate hir::BinaryOp | Aleksey Kladov | 2019-08-17 | 1 | -6/+0 |
| | | | | | Unlike ast::BinOp, it has significantly more structure to it, so it's easier to, say, handle all assignment-like operations in the same way. | ||||
* | implement accessors for IndexExpr | Aleksey Kladov | 2019-08-17 | 1 | -0/+9 |
| | |||||
* | simplify | Aleksey Kladov | 2019-08-17 | 1 | -35/+36 |
| | |||||
* | Merge #1685 | bors[bot] | 2019-08-15 | 4 | -0/+129 |
|\ | | | | | | | | | | | | | | | 1685: fix error of RangeFrom in for-loop r=DJMcNab a=bravomikekilo fix [issue-1542](https://github.com/rust-analyzer/rust-analyzer/issues/1542) @matklad Co-authored-by: bravomikekilo <[email protected]> | ||||
| * | fix test position | bravomikekilo | 2019-08-14 | 5 | -108/+124 |
| | | |||||
| * | fix test | bravomikekilo | 2019-08-14 | 1 | -2/+2 |
| | | |||||
| * | fix error of RangeFrom in for-loop | bravomikekilo | 2019-08-14 | 2 | -0/+113 |
| | | |||||
* | | Merge #1676 | bors[bot] | 2019-08-14 | 2 | -1/+83 |
|\ \ | |/ |/| | | | | | | | | | | | 1676: Fix for<'lifetime> for types specified by path r=matklad a=eupn Fixes #1467. Co-authored-by: Evgenii P <[email protected]> | ||||
| * | Fix for<'lifetime> for types specified by path | Evgenii P | 2019-08-11 | 2 | -1/+83 |
| | | |||||
* | | Merge #1636 | bors[bot] | 2019-08-13 | 2 | -0/+69 |
|\ \ | | | | | | | | | | | | | | | | | | | | | | 1636: fix block parse problem r=matklad a=bravomikekilo try to fix [issue-1598](https://github.com/rust-analyzer/rust-analyzer/issues/1598). Co-authored-by: bravomikekilo <[email protected]> | ||||
| * | | add inline test | bravomikekilo | 2019-08-13 | 2 | -0/+69 |
| | | | |||||
* | | | Lower fully qualified associated type paths | Florian Diebold | 2019-08-12 | 1 | -0/+10 |
| |/ |/| | | | | | I.e. `<T as Trait>::Foo`. | ||||
* | | Move numeric names inside of `NameRef` | Aleksey Kladov | 2019-08-09 | 5 | -25/+32 |
| | | |||||
* | | Parse tuple struct field initialization | Evgenii P | 2019-08-09 | 2 | -6/+28 |
| | | |||||
* | | 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 | 8 | -0/+559 |
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 | 18 | -485/+576 |
| | | | |||||
| * | | Fix variadic arg inline test | Evgenii P | 2019-08-07 | 2 | -24/+24 |
| | | |