Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Move numeric names inside of `NameRef` | Aleksey Kladov | 2019-08-09 | 4 | -10/+8 |
| | |||||
* | Make name_ref to accept numeric names optionally | Evgenii P | 2019-08-09 | 4 | -7/+7 |
| | |||||
* | Parse tuple struct field initialization | Evgenii P | 2019-08-09 | 1 | -1/+2 |
| | |||||
* | Merge #1661 | bors[bot] | 2019-08-08 | 1 | -1/+12 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 | 1 | -13/+4 |
| | | |||||
| * | 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 | 1 | -1/+1 |
| | | |||||
| * | Add function parameters attributes | Evgenii P | 2019-08-07 | 1 | -0/+16 |
| | | |||||
* | | assoc types bounds | Aleksey Kladov | 2019-08-07 | 1 | -0/+7 |
|/ | |||||
* | fix: parse box syntax inside parentheses | csmoe | 2019-07-22 | 1 | -0/+3 |
| | |||||
* | add await to syntax, parser for await_expr | Unreal Hoang | 2019-07-20 | 1 | -0/+12 |
| | |||||
* | Remove parse error on array initializer attributes | Ryan Cumming | 2019-06-30 | 1 | -11/+0 |
| | | | | | This is actually allowed by the `rustc` parser but most attributes will fail later due to attributes on expressions being experimental. | ||||
* | Support attributes on array members | Ryan Cumming | 2019-06-30 | 1 | -0/+28 |
| | | | | | | | | | | | | Array members are allow to have attributes such as `#[cfg]`. This is a bit tricky as we don't know if the first expression is an initializer or a member until we encounter a `;`. This reuses a trick from `stmt` where we remember if we saw an attribute and then raise an error if the first expression ends up being an initializer. This isn't perfect as the error isn't correctly located on the attribute or initializer; it ends up immediately after the `;`. | ||||
* | fixed #1384 | zjy | 2019-06-28 | 2 | -7/+20 |
| | |||||
* | Merge #1415 | bors[bot] | 2019-06-24 | 1 | -1/+28 |
|\ | | | | | | | | | | | | | | | | | 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 | 1 | -1/+28 |
| | | | | | | | | Change-Id: Ic5d2767e8781568d76d4d0013cd6081e95ae8a95 | ||||
* | | fix: box_pattern | csmoe | 2019-06-19 | 3 | -5/+18 |
| | | | | | | | | Change-Id: I45a856d74fb616d3bce33050f9e69d327186bd59 | ||||
* | | fix: box_syntax(#1412) | csmoe | 2019-06-18 | 1 | -0/+5 |
|/ | | | | Change-Id: I6e20e0163fa545de37226c1561b3b7103615626c | ||||
* | fix: support existential type | csmoe | 2019-06-12 | 1 | -3/+13 |
| | |||||
* | fix: never type with binding | csmoe | 2019-06-07 | 1 | -1/+3 |
| | | | | Change-Id: I14e1bc628b9d2dfdb1f40de3d3707f4e872767f2 | ||||
* | [#1083] Try block syntax: fix tests | Andrey Tkachenko | 2019-06-06 | 1 | -7/+7 |
| | |||||
* | [#1083] Try block syntax | Andrey Tkachenko | 2019-06-06 | 1 | -1/+17 |
| | |||||
* | Fix clippy::if_same_then_else | Alan Du | 2019-06-04 | 1 | -0/+1 |
| | |||||
* | reformat | Aleksey Kladov | 2019-05-23 | 4 | -8/+8 |
| | |||||
* | apply T! macro where it is possible | Sergey Parilin | 2019-05-15 | 14 | -423/+423 |
| | |||||
* | Add macro pat parsing | Edwin Cheng | 2019-04-30 | 1 | -1/+10 |
| | |||||
* | Refactor parser handle mult-char punct internally | Edwin Cheng | 2019-04-28 | 1 | -1/+1 |
| | |||||
* | Simplify | kjeremy | 2019-04-26 | 1 | -6/+6 |
| | |||||
* | Add `...` parsing for fn pointer type | Edwin Cheng | 2019-04-23 | 2 | -2/+3 |
| | |||||
* | Add expr, pat, ty and macro_stmts | Edwin Cheng | 2019-04-18 | 1 | -10/+34 |
| | |||||
* | Add mbe stmt matcher | Edwin Cheng | 2019-04-17 | 1 | -72/+82 |
| | |||||
* | Fix bug and add expr , pat , ty matcher | Edwin Cheng | 2019-04-14 | 2 | -10/+42 |
| | |||||
* | Parse and infer tuple indices | robojumper | 2019-04-06 | 1 | -1/+12 |
| | |||||
* | Parse unsafe async / const unsafe fns properly | robojumper | 2019-04-03 | 1 | -6/+17 |
| | |||||
* | Merge #1082 | bors[bot] | 2019-04-01 | 1 | -0/+1 |
|\ | | | | | | | | | | | | | | | 1082: Async block in argument position r=matklad a=andreytkachenko Fixes case when async block appears in argument position Co-authored-by: Andrey Tkachenko <[email protected]> | ||||
| * | Async block in argument position | Andrey Tkachenko | 2019-04-01 | 1 | -0/+1 |
| | | |||||
* | | Async closure syntax | robojumper | 2019-03-31 | 2 | -3/+13 |
|/ | |||||
* | Add WherePred to allow predicate access in WhereClause | Ville Penttinen | 2019-03-31 | 1 | -1/+1 |
| | | | | | This also unifies parsing of WHERE_PRED bounds, now Lifetime bounds will also be parsed using TYPE_BOUND_LIST | ||||
* | Merge #1072 | bors[bot] | 2019-03-31 | 2 | -3/+3 |
|\ | | | | | | | | | | | | | | | 1072: recognize async move blocks r=matklad a=memoryruins closes #1053 Co-authored-by: memoryruins <[email protected]> | ||||
| * | recognize async move | memoryruins | 2019-03-28 | 2 | -3/+3 |
| | | |||||
* | | Change parsing bounds in path_types | Ville Penttinen | 2019-03-31 | 2 | -11/+40 |
| | | | | | | | | | | | | | | | | Now bounds inside a path are parsed as DYN_TRAIT_TYPE, previously they would be parsed as `PATH_TYPE` followed by `TYPE_BOUND_LIST`. Basically this means `Box<T + 'f>` is now parsed almost the same as `Box<dyn T + 'f>` with the exception of not having the `dyn` keyword. | ||||
* | | Move parsing a single TYPE_BOUND to a separate function | Ville Penttinen | 2019-03-30 | 1 | -19/+26 |
| | | |||||
* | | Add new TYPE_BOUND_LIST and TYPE_BOUND syntax kinds | Ville Penttinen | 2019-03-30 | 2 | -2/+10 |
| | | | | | | | | | | | | These are now used when parsing type bounds. In addition parsing paths inside a bound now does not recursively parse paths, rather they are treated as separate bounds, separated by +. | ||||
* | | Fix parsing <= in type_args | Ville Penttinen | 2019-03-30 | 2 | -0/+2 |
|/ | |||||
* | Support references in higher-ranked trait bounds | Ville Penttinen | 2019-03-24 | 1 | -0/+3 |
| | | | | Fixes #1020 | ||||
* | replace todo with fixme | Aleksey Kladov | 2019-03-23 | 4 | -5/+5 |
| | |||||
* | Replace `contract_child` to a less ad-hoc API | pcpthm | 2019-03-19 | 1 | -10/+10 |
| | |||||
* | Error about attributes on | pcpthm | 2019-03-19 | 1 | -12/+23 |
| | | | | unallowed types of expression statement | ||||
* | Allow attributes on top level expression | pcpthm | 2019-03-19 | 2 | -34/+53 |
| | | | | | | A top level expression is either - a expression statement or - the last expression in a block |