Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Basics for trait method resolution | Florian Diebold | 2019-03-25 | 1 | -1/+5 |
| | |||||
* | add name resolution from the old impl | Aleksey Kladov | 2019-03-17 | 1 | -0/+1 |
| | | | | unlike the old impl, this also handles macro imports across crates | ||||
* | Remove `TypeRef` from item opts which implement TypeAscriptionOwner | Ville Penttinen | 2019-02-27 | 1 | -27/+3 |
| | |||||
* | Add new trait TypeAscriptionOwner | Ville Penttinen | 2019-02-26 | 1 | -0/+6 |
| | | | | | This trait should be implemented for nodes which have an ascribed type, e.g. thing : Type. Such as let, const, static, param, named struct fields. | ||||
* | rename type to type_alias in the AST as well | Aleksey Kladov | 2019-02-25 | 1 | -47/+47 |
| | |||||
* | support upcastig in AST enum | Aleksey Kladov | 2019-02-24 | 1 | -0/+398 |
| | |||||
* | Enable parsing attributes for generic lifetimes and type parameters | Ville Penttinen | 2019-02-17 | 1 | -0/+2 |
| | |||||
* | Enable parsing of attributes inside a match block | Ville Penttinen | 2019-02-17 | 1 | -0/+2 |
| | | | | | | | We allow invalid inner attributes to be parsed, e.g. inner attributes that are not directly after the opening brace of the match block. Instead we run validation on `MatchArmList` to allow better reporting of errors. | ||||
* | Handle generic args for method calls | Florian Diebold | 2019-02-16 | 1 | -0/+4 |
| | |||||
* | Add generic params to impl blocks | Florian Diebold | 2019-02-16 | 1 | -0/+1 |
| | |||||
* | Import the prelude | Florian Diebold | 2019-02-13 | 1 | -0/+1 |
| | |||||
* | rename yellow -> syntax_node | Aleksey Kladov | 2019-02-12 | 1 | -1/+1 |
| | | | | why yellow in the first place? Its red + green. | ||||
* | make macro a NameOwner | Aleksey Kladov | 2019-02-11 | 1 | -0/+1 |
| | |||||
* | Fix handling of literal patterns | Florian Diebold | 2019-02-09 | 1 | -1/+36 |
| | | | | | Wrap them in a LiteralPat node so they can be distinguished from literal expressions. | ||||
* | Fill deprecation for LSP | kjeremy | 2019-02-05 | 1 | -0/+1 |
| | |||||
* | Add AST for extern crate | Florian Diebold | 2019-02-04 | 1 | -1/+9 |
| | | | | Also change it to parse the crate name as a NAME_REF, not a NAME. | ||||
* | Pass aliases to ImportData | Florian Diebold | 2019-02-01 | 1 | -0/+33 |
| | |||||
* | Merge #692 | bors[bot] | 2019-01-31 | 1 | -0/+1 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 | 1 | -0/+1 |
| | | |||||
* | | Infer type of match guard | Marcus Klaas de Vries | 2019-01-28 | 1 | -1/+5 |
|/ | |||||
* | 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 | 1 | -0/+44 |
| | | | | then is not always a block... | ||||
* | rename POS_FIELD -> POS_FIELD_DEF | Aleksey Kladov | 2019-01-25 | 1 | -21/+21 |
| | | | | to match NAMED_FIELD_DEF | ||||
* | Add docs to struct fields | Jeremy A. Kolb | 2019-01-25 | 1 | -0/+1 |
| | |||||
* | Merge #630 | bors[bot] | 2019-01-25 | 1 | -3/+15 |
|\ | | | | | | | | | | | | | | | | | | | | | | | 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 | 1 | -3/+15 |
| | | |||||
* | | Merge #633 | bors[bot] | 2019-01-24 | 1 | -0/+496 |
|\ \ | | | | | | | | | | | | | | | | | | | | | | 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 | 1 | -0/+496 |
| |/ | |||||
* / | Migrate trait & type to new ids | Aleksey Kladov | 2019-01-24 | 1 | -0/+1 |
|/ | |||||
* | Make EnumVariant a DocCommentsOwner | Jeremy A. Kolb | 2019-01-23 | 1 | -0/+1 |
| | |||||
* | Add AST/HIR for type args in path segments | Florian Diebold | 2019-01-19 | 1 | -0/+128 |
| | |||||
* | Change parsing of struct field patterns | Marcus Klaas de Vries | 2019-01-19 | 1 | -1/+5 |
| | |||||
* | Move parsing of field pattern lists to the parser (where it belongs) | Marcus Klaas de Vries | 2019-01-19 | 1 | -1/+34 |
| | |||||
* | Add initial (flawed) implementation of binding annotations | Marcus Klaas de Vries | 2019-01-19 | 1 | -1/+5 |
| | |||||
* | Create struct patterns up to the hir level | Marcus Klaas de Vries | 2019-01-19 | 1 | -4/+9 |
| | |||||
* | Add additional pattern variants | Marcus Klaas de Vries | 2019-01-19 | 1 | -2/+10 |
| | |||||
* | Update ARRAY_EXPR grammar | Hirokazu Hata | 2019-01-16 | 1 | -1/+5 |
| | |||||
* | Fix type inference for raw (byte) strings | Marcus Klaas de Vries | 2019-01-14 | 1 | -0/+56 |
| | |||||
* | Fixup tests | Marcus Klaas de Vries | 2019-01-14 | 1 | -38/+94 |
| | |||||
* | Start moving literal interpretation to the AST (WIP) | Marcus Klaas de Vries | 2019-01-14 | 1 | -4/+110 |
| | |||||
* | Update TUPLE_EXPR grammar | Hirokazu Hata | 2019-01-13 | 1 | -1/+5 |
| | |||||
* | support ref-patterns | Aleksey Kladov | 2019-01-13 | 1 | -1/+5 |
| | |||||
* | rename TreePtr -> TreeArc | Aleksey Kladov | 2019-01-11 | 1 | -113/+113 |
| | | | | This is much clearer about the semantics | ||||
* | itroduce trait for ast tokens | Aleksey Kladov | 2019-01-08 | 1 | -0/+7 |
| | |||||
* | regenerate | Aleksey Kladov | 2019-01-08 | 1 | -3052/+1791 |
| | |||||
* | Make FnScopes use hir::Expr | Florian Diebold | 2019-01-05 | 1 | -16/+9 |
| | | | | | | This was a bit complicated. I've added a wrapper type for now that does the LocalSyntaxPtr <-> ExprId translation; we might want to get rid of that or give it a nicer interface. | ||||
* | Add HIR Expr machinery | Florian Diebold | 2019-01-05 | 1 | -1/+9 |
| | |||||
* | Type the self parameter | Florian Diebold | 2019-01-04 | 1 | -1/+46 |
| | |||||
* | Add HIR for impl blocks | Florian Diebold | 2019-01-04 | 1 | -2/+38 |
| | | | | | | | | | Since we need to be able to go from def to containing impl block, as well as the other direction, and to find all impls for a certain type, a design similar to the one for modules, where we collect all impls for the whole crate and keep them in an arena, seemed fitting. The ImplBlock type, which provides the public interface, then consists only of an Arc to the arena containing all impls, and the index into it. | ||||
* | Rename ImplItem to ImplBlock | Florian Diebold | 2019-01-04 | 1 | -18/+18 |
| | | | | | rustc uses the name ImplItem for items in impls, not the impl {} block itself, which could lead to confusion. |