Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Merge #692 | bors[bot] | 2019-01-31 | 15 | -0/+432 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 692: [WIP] Correctly parse attributes r=matklad a=DJMcNab Reference - https://doc.rust-lang.org/reference/attributes.html This fixes/investigates inner attributes for: - [x] `impl` blocks - [x] `extern` blocks - [x] `fn`s (fixes #689) - [x] `mod`s (already supported) - [x] 'block expressions' (the long text just describes all 'blocks' used as statements) This also investigates/fixes outer attributes for: - [ ] 'most statements' (see also: #685, https://doc.rust-lang.org/reference/expressions.html#expression-attributes) - [x] Enum variants, Struct and Union fields (Fixed in #507) - [ ] 'Match expression arms' (@matklad can you provide a test case which explains what this means?) - [ ] 'Generic lifetime or type parameters' - [ ] 'Elements of array expressions, tuple expressions, call expressions, tuple-style struct and enum variant expressions' - [ ] 'The tail expression of block expressions' Co-authored-by: DJMcNab <[email protected]> | |||||
| * | Parse and validate attributes in blocks | DJMcNab | 2019-01-28 | 10 | -0/+352 | |
| | | ||||||
| * | Add a test for inner attributes on extern blocks | DJMcNab | 2019-01-27 | 2 | -0/+30 | |
| | | ||||||
| * | Correctly parse inner attributes of impl blocks | DJMcNab | 2019-01-27 | 3 | -0/+50 | |
| | | ||||||
* | | Infer type of match guard | Marcus Klaas de Vries | 2019-01-28 | 6 | -44/+117 | |
| | | ||||||
* | | Typos | Erlend Tobiassen | 2019-01-27 | 1 | -2/+2 | |
|/ | ||||||
* | Merge #685 | bors[bot] | 2019-01-27 | 4 | -36/+125 | |
|\ | | | | | | | | | | | | | | | 685: Support attributes on let statements r=matklad a=DJMcNab Fix #677. Co-authored-by: DJMcNab <[email protected]> | |||||
| * | Stop using let_stmt twice | DJMcNab | 2019-01-27 | 1 | -43/+41 | |
| | | ||||||
| * | Make attrs be a child of the let statement | DJMcNab | 2019-01-26 | 3 | -23/+26 | |
| | | ||||||
| * | Support attributes on let statements | DJMcNab | 2019-01-26 | 3 | -20/+108 | |
| | | ||||||
* | | Merge #662 | bors[bot] | 2019-01-27 | 1 | -13/+62 | |
|\ \ | | | | | | | | | | | | | | | | | | | | | | 662: Preserve indentation in doc comments r=matklad a=kjeremy Fixes #502 Co-authored-by: Jeremy Kolb <[email protected]> | |||||
| * | | Make doc comments optional | Jeremy Kolb | 2019-01-26 | 1 | -5/+24 | |
| | | | ||||||
| * | | Do not unconditionally trim comments | Jeremy Kolb | 2019-01-26 | 1 | -2/+1 | |
| | | | ||||||
| * | | Preserve indentation in doc comments | Jeremy Kolb | 2019-01-26 | 1 | -9/+40 | |
| | | | ||||||
* | | | fix verification on CI | Aleksey Kladov | 2019-01-26 | 1 | -44/+0 | |
| | | | | | | | | | | | | remove `--verify` flag from the binaries: we have tests for this! | |||||
* | | | fix AST for if expressions | Aleksey Kladov | 2019-01-26 | 2 | -2/+60 | |
| |/ |/| | | | | | then is not always a block... | |||||
* | | Struct literals should not be a `BlockLike::Block` | DJMcNab | 2019-01-26 | 3 | -1/+118 | |
| | | ||||||
* | | :arrow_up: rowan | Aleksey Kladov | 2019-01-26 | 1 | -1/+1 | |
|/ | | | | | | The new rowan uses arena allocator for red nodes which helps slightly (5% on std completion test) with performance but should help quite a bit with avoiding memory fragmentation. | |||||
* | Merge #660 | bors[bot] | 2019-01-26 | 3 | -1/+68 | |
|\ | | | | | | | | | | | | | | | 660: Support macro calls in type position r=matklad a=regiontog A [playground](https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=fdc6dd4ddaece92a72fa2a292b75e27c) demonstrating the syntax in question. Co-authored-by: Erlend Tobiassen <[email protected]> | |||||
| * | Support macro calls in type position | Erlend Tobiassen | 2019-01-25 | 3 | -1/+68 | |
| | | ||||||
* | | rename POS_FIELD -> POS_FIELD_DEF | Aleksey Kladov | 2019-01-25 | 13 | -62/+62 | |
| | | | | | | | | to match NAMED_FIELD_DEF | |||||
* | | Add docs to struct fields | Jeremy A. Kolb | 2019-01-25 | 3 | -2/+3 | |
|/ | ||||||
* | Merge #630 | bors[bot] | 2019-01-25 | 2 | -24/+45 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | 630: Fill in DocumentSymbol::detail r=matklad a=hban Closes: #516 I just pulled type text from the syntax node and "formatted" is bit. VS Code can't really handle multi-line symbol detail (it's will crop it when rendering), so that formatting will just collapse all white-space to singe space. It isn't pretty, but maybe there's a better way. Issue also mentions "need to be done for `NavigationTarget` to `SymbolInformation`", but `SymbolInformation` doesn't have detail field on it? Co-authored-by: Hrvoje Ban <[email protected]> | |||||
| * | Fill in DocumentSymbol::detail | Hrvoje Ban | 2019-01-24 | 2 | -24/+45 | |
| | | ||||||
* | | Merge #633 | bors[bot] | 2019-01-24 | 4 | -8/+523 | |
|\ \ | | | | | | | | | | | | | | | | | | | | | | 633: use ToOwned trait instead of inherent method r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | | use ToOwned trait instead of inherent method | Aleksey Kladov | 2019-01-24 | 4 | -8/+523 | |
| | | | ||||||
* | | | Merge #623 | bors[bot] | 2019-01-24 | 3 | -2/+10 | |
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | 623: WIP: module id is not def id r=matklad a=matklad This achieves two things: * makes module_tree & item_map per crate, not per source_root * begins the refactoring to remove universal `DefId` in favor of having separate ids for each kind of `Def`. Currently, only modules get a differnt ID though. Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | | Migrate trait & type to new ids | Aleksey Kladov | 2019-01-24 | 2 | -2/+3 | |
| | | | ||||||
| * | | migrate enums to new id | Aleksey Kladov | 2019-01-24 | 1 | -0/+7 | |
| | | | ||||||
* | | | Reformat | DJMcNab | 2019-01-24 | 1 | -15/+16 | |
| | | | ||||||
* | | | Apply suggestions from code review | Daniel McNab | 2019-01-24 | 1 | -2/+1 | |
| | | | | | | | | | Co-Authored-By: DJMcNab <[email protected]> | |||||
* | | | Dedupe PATH_FIRST in ATOM_EXPR_FIRST | DJMcNab | 2019-01-24 | 1 | -7/+2 | |
| | | | ||||||
* | | | Support universal function call syntax in function calls | DJMcNab | 2019-01-24 | 6 | -6/+226 | |
| |/ |/| | ||||||
* | | minor rename | Aleksey Kladov | 2019-01-24 | 1 | -4/+4 | |
|/ | ||||||
* | Make EnumVariant a DocCommentsOwner | Jeremy A. Kolb | 2019-01-23 | 3 | -2/+4 | |
| | ||||||
* | More correct raw ident handling | Josh Robson Chase | 2019-01-23 | 3 | -5/+58 | |
| | ||||||
* | Use IDENT for both raw and normal idents | Josh Robson Chase | 2019-01-23 | 22 | -78/+39 | |
| | ||||||
* | Add raw idents to lexer and parser | Josh Robson Chase | 2019-01-23 | 26 | -40/+124 | |
| | ||||||
* | introduced better typed AstPtr | Aleksey Kladov | 2019-01-23 | 2 | -1/+35 | |
| | ||||||
* | move SyntaxPtr to ra_syntax | Aleksey Kladov | 2019-01-23 | 2 | -0/+55 | |
| | ||||||
* | fix completion bugs | gfreezy | 2019-01-23 | 1 | -0/+7 | |
| | ||||||
* | :arrow_up: rowan | Aleksey Kladov | 2019-01-22 | 2 | -1/+5 | |
| | ||||||
* | Add test for placeholder parameters in trait fn defs | Erlend Tobiassen | 2019-01-22 | 3 | -0/+40 | |
| | ||||||
* | Allow placeholder parameters in trait fn defs | Erlend Tobiassen | 2019-01-22 | 1 | -1/+1 | |
| | ||||||
* | No need for is_type_start | Erlend Tobiassen | 2019-01-22 | 2 | -9/+1 | |
| | ||||||
* | Prefer TYPE_FIRST | Erlend Tobiassen | 2019-01-22 | 1 | -4/+4 | |
| | ||||||
* | Update tests after allowing where predicate to accept types | Erlend Tobiassen | 2019-01-22 | 5 | -20/+68 | |
| | ||||||
* | Optimistically bail out of where clause loop if not at start of a type or ↵ | Erlend Tobiassen | 2019-01-22 | 2 | -12/+24 | |
| | | | | lifetime | |||||
* | Don't leave a marker hanging without completing it. | Erlend Tobiassen | 2019-01-22 | 1 | -2/+1 | |
| | ||||||
* | Allow types to the left of : in where predicates. | Erlend Tobiassen | 2019-01-22 | 1 | -24/+27 | |
| |