Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge #1415 | bors[bot] | 2019-06-24 | 4 | -0/+121 |
|\ | | | | | | | | | | | | | | | | | 1415: fix: specialization r=matklad a=csmoe Closes #1402 r? @matklad Co-authored-by: csmoe <[email protected]> | ||||
| * | fix: specialization(with blindly parsing) | csmoe | 2019-06-19 | 4 | -0/+121 |
| | | | | | | | | Change-Id: Ic5d2767e8781568d76d4d0013cd6081e95ae8a95 | ||||
* | | fix: box_pattern | csmoe | 2019-06-19 | 4 | -6/+67 |
| | | | | | | | | Change-Id: I45a856d74fb616d3bce33050f9e69d327186bd59 | ||||
* | | fix: box_syntax(#1412) | csmoe | 2019-06-18 | 1 | -0/+3 |
|/ | | | | Change-Id: I6e20e0163fa545de37226c1561b3b7103615626c | ||||
* | fix: support existential type | csmoe | 2019-06-12 | 3 | -2/+34 |
| | |||||
* | fix: never type with binding | csmoe | 2019-06-07 | 2 | -6/+38 |
| | | | | Change-Id: I14e1bc628b9d2dfdb1f40de3d3707f4e872767f2 | ||||
* | [#1083] Try block syntax: fix tests | Andrey Tkachenko | 2019-06-06 | 2 | -0/+34 |
| | |||||
* | show error offsets in tests | Aleksey Kladov | 2019-05-29 | 11 | -30/+30 |
| | |||||
* | update test data | Aleksey Kladov | 2019-05-28 | 11 | -30/+30 |
| | |||||
* | Add macro pat parsing | Edwin Cheng | 2019-04-30 | 2 | -0/+39 |
| | |||||
* | Refactor parser handle mult-char punct internally | Edwin Cheng | 2019-04-28 | 1 | -1/+2 |
| | |||||
* | Add `...` parsing for fn pointer type | Edwin Cheng | 2019-04-23 | 2 | -1/+44 |
| | |||||
* | Parse and infer tuple indices | robojumper | 2019-04-06 | 4 | -6/+78 |
| | |||||
* | Parse unsafe async / const unsafe fns properly | robojumper | 2019-04-03 | 4 | -0/+78 |
| | |||||
* | always show token text | Aleksey Kladov | 2019-04-02 | 136 | -3929/+3929 |
| | |||||
* | Async closure syntax | robojumper | 2019-03-31 | 2 | -6/+53 |
| | |||||
* | Add WherePred to allow predicate access in WhereClause | Ville Penttinen | 2019-03-31 | 1 | -5/+8 |
| | | | | | This also unifies parsing of WHERE_PRED bounds, now Lifetime bounds will also be parsed using TYPE_BOUND_LIST | ||||
* | Update tests | Ville Penttinen | 2019-03-31 | 2 | -10/+54 |
| | |||||
* | Update tests | Ville Penttinen | 2019-03-30 | 15 | -176/+292 |
| | |||||
* | Fix parsing <= in type_args | Ville Penttinen | 2019-03-30 | 2 | -6/+27 |
| | |||||
* | Support references in higher-ranked trait bounds | Ville Penttinen | 2019-03-24 | 2 | -1/+127 |
| | | | | Fixes #1020 | ||||
* | Error about attributes on | pcpthm | 2019-03-19 | 2 | -0/+59 |
| | | | | unallowed types of expression statement | ||||
* | Allow attributes on top level expression | pcpthm | 2019-03-19 | 4 | -0/+152 |
| | | | | | | A top level expression is either - a expression statement or - the last expression in a block | ||||
* | Merge #991 | bors[bot] | 2019-03-18 | 7 | -7/+85 |
|\ | | | | | | | | | | | | | | | | | | | | | | | 991: Use Marker argument for item parsers r=matklad a=pcpthm Before doing this for expressions, I found that the pattern (Marker argument) should be applied to the item parsers because visiblity and modifiers are parsed in a separate function. Fixed some parser bugs: - Fix pub_expr: `pub 42;` was allowed. - Fix incorrect parsing of crate::path: incorrectly parsed as `crate` as a visibility. Co-authored-by: pcpthm <[email protected]> | ||||
| * | Use Marker argument for item parsers | pcpthm | 2019-03-18 | 7 | -7/+85 |
| | | | | | | | | | | - Fix pub_expr - Fix incorrect parsing of crate::path | ||||
* | | Fix parse tree of attribute on match arm | pcpthm | 2019-03-17 | 1 | -78/+78 |
|/ | |||||
* | Allow attribute on struct literal field | pcpthm | 2019-03-17 | 2 | -0/+48 |
| | |||||
* | Add test for async block | Caio | 2019-03-10 | 2 | -0/+32 |
| | |||||
* | Add async keyword | Caio | 2019-03-09 | 2 | -0/+17 |
| | |||||
* | Add support for parsing multiple if and while-let patterns | Ville Penttinen | 2019-03-04 | 2 | -1/+164 |
| | |||||
* | allow `mut ident` patterns in trait methods | Aleksey Kladov | 2019-03-04 | 2 | -11/+26 |
| | | | | closes #928 | ||||
* | allow aliases in underscores | Aleksey Kladov | 2019-03-04 | 2 | -1/+17 |
| | | | | | | | | this helps with use foo::Trait as _; syntax | ||||
* | allow vararg functions | Aleksey Kladov | 2019-03-04 | 2 | -0/+50 |
| | |||||
* | rename type to type_alias in the AST as well | Aleksey Kladov | 2019-02-25 | 28 | -37/+37 |
| | |||||
* | Enable parsing attributes for generic lifetimes and type parameters | Ville Penttinen | 2019-02-17 | 2 | -0/+63 |
| | |||||
* | Enable parsing of attributes inside a match block | Ville Penttinen | 2019-02-17 | 4 | -0/+229 |
| | | | | | | | 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. | ||||
* | make macro a NameOwner | Aleksey Kladov | 2019-02-11 | 2 | -2/+4 |
| | |||||
* | Fix handling of literal patterns | Florian Diebold | 2019-02-09 | 2 | -21/+31 |
| | | | | | Wrap them in a LiteralPat node so they can be distinguished from literal expressions. | ||||
* | Add AST for extern crate | Florian Diebold | 2019-02-04 | 1 | -1/+1 |
| | | | | Also change it to parse the crate name as a NAME_REF, not a NAME. | ||||
* | Merge #692 | bors[bot] | 2019-01-31 | 2 | -0/+43 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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]> | ||||
| * | Correctly parse inner attributes of impl blocks | DJMcNab | 2019-01-27 | 2 | -0/+43 |
| | | |||||
* | | Infer type of match guard | Marcus Klaas de Vries | 2019-01-28 | 3 | -40/+95 |
|/ | |||||
* | Merge #660 | bors[bot] | 2019-01-26 | 2 | -0/+45 |
|\ | | | | | | | | | | | | | | | 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 | 2 | -0/+45 |
| | | |||||
* | | rename POS_FIELD -> POS_FIELD_DEF | Aleksey Kladov | 2019-01-25 | 3 | -10/+10 |
|/ | | | | to match NAMED_FIELD_DEF | ||||
* | Support universal function call syntax in function calls | DJMcNab | 2019-01-24 | 2 | -6/+85 |
| | |||||
* | Add test for placeholder parameters in trait fn defs | Erlend Tobiassen | 2019-01-22 | 2 | -0/+35 |
| | |||||
* | Update tests after allowing where predicate to accept types | Erlend Tobiassen | 2019-01-22 | 1 | -12/+13 |
| | |||||
* | Change parsing of struct field patterns | Marcus Klaas de Vries | 2019-01-19 | 1 | -12/+10 |
| | |||||
* | Finish move of StructField for pattern type inference | Marcus Klaas de Vries | 2019-01-19 | 1 | -20/+26 |
| |