Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Remove parse error on array initializer attributes | Ryan Cumming | 2019-06-30 | 2 | -65/+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 | 6 | -0/+177 |
| | | | | | | | | | | | | 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 | -0/+70 |
| | |||||
* | 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 | 5 | -6/+69 |
| | | | | | | | | Change-Id: I45a856d74fb616d3bce33050f9e69d327186bd59 | ||||
* | | fix: box_syntax(#1412) | csmoe | 2019-06-18 | 1 | -0/+3 |
|/ | | | | Change-Id: I6e20e0163fa545de37226c1561b3b7103615626c | ||||
* | Fix formatting | Shotaro Yamada | 2019-06-15 | 1 | -7/+3 |
| | |||||
* | Skip attrs in `Literal::token` | Shotaro Yamada | 2019-06-15 | 1 | -2/+17 |
| | |||||
* | Get rid of failure: ra_batch ra_cli | Muhammad Mominul Huque | 2019-06-15 | 1 | -1/+1 |
| | |||||
* | fix: support existential type | csmoe | 2019-06-12 | 5 | -3/+36 |
| | |||||
* | 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 | 4 | -37/+34 |
| | |||||
* | [#1083] Try block syntax | Andrey Tkachenko | 2019-06-06 | 5 | -0/+86 |
| | |||||
* | fix: clean up warnings | csmoe | 2019-06-06 | 1 | -3/+3 |
| | | | | Change-Id: I91a468f6e846ac28574825b8ee7aa02fbff68f63 | ||||
* | Fix clippy::or_fun_call | Alan Du | 2019-06-04 | 1 | -1/+1 |
| | |||||
* | Fix clippy::single_char_pattern | Alan Du | 2019-06-04 | 1 | -1/+1 |
| | |||||
* | :arrow_up: parking_lot | Aleksey Kladov | 2019-05-30 | 1 | -1/+0 |
| | |||||
* | flip Into to From | Aleksey Kladov | 2019-05-29 | 1 | -6/+6 |
| | |||||
* | show error offsets in tests | Aleksey Kladov | 2019-05-29 | 46 | -290/+299 |
| | |||||
* | remove old parsing methods | Aleksey Kladov | 2019-05-28 | 7 | -62/+54 |
| | |||||
* | update test data | Aleksey Kladov | 2019-05-28 | 45 | -289/+290 |
| | |||||
* | update tests | Aleksey Kladov | 2019-05-28 | 4 | -47/+36 |
| | |||||
* | drop error from SOurceFile constructor | Aleksey Kladov | 2019-05-28 | 2 | -5/+5 |
| | |||||
* | return errors from tree builder | Aleksey Kladov | 2019-05-28 | 1 | -3/+3 |
| | |||||
* | drop errors from SyntaxNode | Aleksey Kladov | 2019-05-28 | 2 | -9/+6 |
| | |||||
* | add Parse | Aleksey Kladov | 2019-05-28 | 1 | -2/+26 |
| | |||||
* | Make rainbows optional | Pascal Hertleif | 2019-05-27 | 1 | -1/+2 |
| | |||||
* | More clever highlighting, incl draft for structs | Pascal Hertleif | 2019-05-27 | 1 | -4/+0 |
| | |||||
* | Hash based on binding name and shadow counter | Pascal Hertleif | 2019-05-27 | 1 | -1/+6 |
| | |||||
* | Semantic highlighting spike | Pascal Hertleif | 2019-05-27 | 1 | -0/+4 |
| | | | | | | | | | | Very simple approach: For each identifier, set the hash of the range where it's defined as its 'id' and use it in the VSCode extension to generate unique colors. Thus, the generated colors are per-file. They are also quite fragile, and I'm not entirely sure why. Looks like we need to make sure the same ranges aren't overwritten by a later request? | ||||
* | Change TokenSource to iteration based | Edwin Cheng | 2019-05-25 | 3 | -17/+38 |
| | |||||
* | sort hash maps for tests | Aleksey Kladov | 2019-05-21 | 1 | -1/+1 |
| | |||||
* | add is_union to structs AST | Aleksey Kladov | 2019-05-20 | 1 | -1/+17 |
| | |||||
* | :arrow_up: text_unit | Aleksey Kladov | 2019-05-15 | 2 | -40/+27 |
| | |||||
* | apply T! macro where it is possible | Sergey Parilin | 2019-05-15 | 6 | -87/+86 |
| | |||||
* | make AstId untyped | Aleksey Kladov | 2019-05-13 | 2 | -8/+9 |
| | |||||
* | Merge #1257 | bors[bot] | 2019-05-13 | 1 | -0/+1 |
|\ | | | | | | | | | | | | | | | 1257: Implemented tkn! macro for syntax kinds r=matklad a=pasa Implementation of #1248 Co-authored-by: Sergey Parilin <[email protected]> | ||||
| * | Implemented T! macro for syntax kinds | Sergey Parilin | 2019-05-13 | 1 | -0/+1 |
| | | |||||
* | | Handle auto traits & negative impls | Florian Diebold | 2019-05-11 | 1 | -0/+10 |
| | | | | | | | | | | We don't pass field types to Chalk yet though, so the auto trait inference won't be correct. | ||||
* | | share literal validation logic with compiler | Aleksey Kladov | 2019-05-07 | 10 | -1201/+620 |
|/ | |||||
* | fill struct fields diagnostic | Sergey Parilin | 2019-05-06 | 2 | -6/+9 |
| | |||||
* | Merge #1208 | bors[bot] | 2019-05-04 | 2 | -1/+2 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1208: [WIP] Goto for Macro's r=matklad a=Lapz Adds goto definition for macros. Currently only works for macros in the current crate ~~otherwise it panics~~. Proper macro resolution needs to be added for it to resolve macros in other crates. Todo - [X] Allow goto from macro calls - [X] Fix panics - [x] Add tests ![Screen Recording 2019-04-25 at 18 00 24](https://user-images.githubusercontent.com/19998186/56754499-1dd01c00-6785-11e9-9e9a-1e36de70cfa3.gif) Co-authored-by: Lenard Pratt <[email protected]> | ||||
| * | Added local macro goto | Lenard Pratt | 2019-05-04 | 2 | -1/+2 |
| | | |||||
* | | Revert "eagarly clean astd maps" | Aleksey Kladov | 2019-05-04 | 1 | -1/+1 |
| | | | | | | | | | | | | This reverts commit 6c63a59425e256ce46d058807b64149297231982. This causes massive slowdowns: looks like we accidentally have some source-depndent | ||||
* | | eagarly clean astd maps | Aleksey Kladov | 2019-05-04 | 1 | -1/+1 |
| | | |||||
* | | Add default type param in TypeParam Node | Edwin Cheng | 2019-05-03 | 3 | -1/+8 |
|/ | |||||
* | Add macro pat parsing | Edwin Cheng | 2019-04-30 | 2 | -0/+39 |
| | |||||
* | Merge #1213 | bors[bot] | 2019-04-28 | 5 | -105/+106 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1213: Make lexer produce only single character puncts r=matklad a=edwin0cheng As discussed in Zulip, this PR change `lexer` to produce only single char punct. * Remove producing `DOTDOTDOT, DOTDOTEQ, DOTDOT, COLONCOLON, EQEQ, FAT_ARROW, NEQ, THIN_ARROW` in lexer. * Add required code in parser to make sure everythings works fine. * Change some tests (Mainly because the `ast::token_tree` is different) Note: i think the use of `COLON` in rust is too overloaded :) Co-authored-by: Edwin Cheng <[email protected]> | ||||
| * | Refactor parser handle mult-char punct internally | Edwin Cheng | 2019-04-28 | 5 | -105/+106 |
| | |