Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Correctly infer types in guard expressions | Aleksey Kladov | 2020-04-18 | 1 | -0/+4 |
| | | | | | | | The root cause was that we forgot to add bindings from the arm to the guard expression closes #3980 | ||||
* | Merge #4012 | bors[bot] | 2020-04-17 | 1 | -3/+10 |
|\ | | | | | | | | | | | | | | | 4012: fix panic on ellipsis in pattern r=flodiebold a=JoshMcguigan fixes #3999 Co-authored-by: Josh Mcguigan <[email protected]> | ||||
| * | fix panic on ellipsis in pattern | Josh Mcguigan | 2020-04-17 | 1 | -3/+10 |
| | | |||||
* | | Don't expose impl details of SyntaxPtr | Aleksey Kladov | 2020-04-17 | 1 | -1/+2 |
|/ | |||||
* | handle tuple patterns with ellipsis | Josh Mcguigan | 2020-04-13 | 1 | -5/+22 |
| | |||||
* | Align grammar for record patterns and literals | Aleksey Kladov | 2020-04-11 | 1 | -1/+1 |
| | | | | | | The grammar now looks like this [name_ref :] pat | ||||
* | Merge #3925 | bors[bot] | 2020-04-11 | 1 | -1/+0 |
|\ | | | | | | | | | | | | | | | | | | | 3925: Implement assist "Reorder field names" r=matklad a=geoffreycopin This PR implements the "Reorder record fields" assist as discussed in issue #3821 . Adding a `RecordFieldPat` variant to the `Pat` enum seemed like the easiest way to handle the `RecordPat` children as a single sequence of elements, maybe there is a better way ? Co-authored-by: Geoffrey Copin <[email protected]> | ||||
| * | Avoid adding a RecordFieldPat variant to the Pat enum | Geoffrey Copin | 2020-04-11 | 1 | -2/+0 |
| | | |||||
| * | Implement assist "Reorder field names" | Geoffrey Copin | 2020-04-09 | 1 | -1/+2 |
| | | |||||
* | | Remove dead code | Aleksey Kladov | 2020-04-11 | 1 | -2/+1 |
| | | |||||
* | | Make records grammar more orthogonal | Aleksey Kladov | 2020-04-11 | 1 | -22/+5 |
| | | | | | | | | | | | | | | | | | | | | | | | | We used name [: expr] grammar before, now it is [name :] expr which makes things simpler | ||||
* | | Align naming | Aleksey Kladov | 2020-04-11 | 1 | -2/+1 |
| | | |||||
* | | Pull Expander up | Aleksey Kladov | 2020-04-11 | 1 | -5/+3 |
| | | |||||
* | | Simplify | Aleksey Kladov | 2020-04-11 | 1 | -8/+3 |
| | | |||||
* | | Forward compat | Aleksey Kladov | 2020-04-10 | 1 | -3/+3 |
| | | |||||
* | | add record pat missing field diagnostic | Josh Mcguigan | 2020-04-10 | 1 | -1/+3 |
|/ | |||||
* | Simpler acessors for keywords | Aleksey Kladov | 2020-04-09 | 1 | -6/+4 |
| | |||||
* | use uniform accessor | Aleksey Kladov | 2020-04-09 | 1 | -1/+1 |
| | |||||
* | Merge #3918 | bors[bot] | 2020-04-09 | 1 | -18/+33 |
|\ | | | | | | | | | | | | | | | | | 3918: Add support for feature attributes in struct literal r=matklad a=bnjjj As promised here is the next PR to solve 2 different scenarios with feature flag on struct literal. close #3870 Co-authored-by: Benjamin Coenen <[email protected]> | ||||
| * | feat: add support for feature attributes in struct literal | Benjamin Coenen | 2020-04-09 | 1 | -3/+6 |
| |\ | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]> | ||||
| * | | feat: add support for feature attributes in struct literal | Benjamin Coenen | 2020-04-09 | 1 | -18/+33 |
| | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]> | ||||
* | | | Be consistent about token accesors | Aleksey Kladov | 2020-04-09 | 1 | -2/+5 |
| |/ |/| | |||||
* | | Scale back to only two traits | Aleksey Kladov | 2020-04-09 | 1 | -1/+0 |
| | | |||||
* | | Provide more complete AST accessors to support usage in rustc | Luca Barbieri | 2020-04-09 | 1 | -3/+7 |
|/ | |||||
* | Macro patterns are not confused with expressions. | Aleksey Kladov | 2020-04-03 | 1 | -2/+1 |
| | | | | | | | | | | | We treat macro calls as expressions (there's appropriate Into impl), which causes problem if there's expresison and non-expression macro in the same node (like in the match arm). We fix this problem by nesting macor patterns into another node (the same way we nest path into PathExpr or PathPat). Ideally, we probably should add a similar nesting for macro expressions, but that needs some careful thinking about macros in blocks: `{ am_i_expression!() }`. | ||||
* | lower bool literal with the value from source code rather than default bool ↵ | Josh Mcguigan | 2020-04-01 | 1 | -1/+1 |
| | | | | value | ||||
* | lower literal patterns | Josh Mcguigan | 2020-04-01 | 1 | -21/+33 |
| | |||||
* | Get rid of ItemOrMacro | Aleksey Kladov | 2020-03-26 | 1 | -1/+2 |
| | |||||
* | Add support for macro in symbo_index | Edwin Cheng | 2020-03-22 | 1 | -11/+1 |
| | |||||
* | Simplify Arena to use a generic index | Aleksey Kladov | 2020-03-19 | 2 | -8/+6 |
| | |||||
* | Use `dyn Trait` for working with databse | Aleksey Kladov | 2020-03-16 | 2 | -8/+5 |
| | | | | | | | It improves compile time in `--release` mode quite a bit, it doesn't really slow things down and, conceptually, it seems closer to what we want the physical architecture to look like (we don't want to monomorphise EVERYTHING in a single leaf crate). | ||||
* | Support local macro_rules | Edwin Cheng | 2020-03-14 | 1 | -12/+36 |
| | |||||
* | Explicitly remember desugard pats | Aleksey Kladov | 2020-03-06 | 1 | -4/+8 |
| | |||||
* | Explicitly remember desugard exprs | Aleksey Kladov | 2020-03-06 | 1 | -15/+16 |
| | |||||
* | Rename ast::ImplBlock -> ast::ImplDef | Aleksey Kladov | 2020-02-29 | 1 | -1/+1 |
| | |||||
* | Fix handling of const patterns | Florian Diebold | 2020-02-21 | 1 | -3/+35 |
| | | | | | | | | | E.g. in `match x { None => ... }`, `None` is a path pattern (resolving to the option variant), not a binding. To determine this, we need to try to resolve the name during lowering. This isn't too hard since we already need to resolve names for macro expansion anyway (though maybe a bit hacky). Fixes #1618. | ||||
* | Run cargo +nightly fix --clippy -Z unstable-options | Kirill Bulatov | 2020-02-18 | 1 | -1/+1 |
| | |||||
* | Merge #3062 | bors[bot] | 2020-02-11 | 1 | -4/+12 |
|\ | | | | | | | | | | | | | | | | | | | 3062: Implement slice pattern AST > HIR lowering r=jplatte a=jplatte WIP. The necessary changes for parsing are implemented, but actual inference is not yet. Just wanted to upload what I've got so far so it doesn't get duplicated :) Will fix #3043 Co-authored-by: Jonas Platte <[email protected]> | ||||
| * | Implement slice pattern AST > HIR lowering | Jonas Platte | 2020-02-11 | 1 | -4/+12 |
| | | |||||
* | | Merge #3074 | bors[bot] | 2020-02-10 | 2 | -8/+11 |
|\ \ | | | | | | | | | | | | | | | | | | | | | | 3074: Or patterns r=matthewjasper a=matthewjasper Works towards #2458 Co-authored-by: Matthew Jasper <[email protected]> | ||||
| * | | Add or- and parenthesized-patterns | Matthew Jasper | 2020-02-09 | 2 | -8/+11 |
| |/ | |||||
* / | move to to_usize() | Veetaha | 2020-02-09 | 1 | -1/+1 |
|/ | |||||
* | Merge #2650 | bors[bot] | 2019-12-29 | 1 | -7/+13 |
|\ | | | | | | | | | | | | | | | 2650: Add macro call support for SourceAnalyzer::type_of r=matklad a=edwin0cheng Co-authored-by: Edwin Cheng <[email protected]> | ||||
| * | Use pre-stored macro file | Edwin Cheng | 2019-12-23 | 1 | -7/+13 |
| | | |||||
* | | Rename ResolvedVisibility -> Visibility | Florian Diebold | 2019-12-26 | 1 | -1/+1 |
| | | |||||
* | | Keep track of visibility during def collection | Florian Diebold | 2019-12-26 | 1 | -1/+4 |
|/ | |||||
* | Rudimentary name resolution for local items | Aleksey Kladov | 2019-12-22 | 1 | -10/+22 |
| | |||||
* | Share impl Scope between modules and blocks | Aleksey Kladov | 2019-12-22 | 1 | -2/+2 |
| | |||||
* | Simplify | Aleksey Kladov | 2019-12-22 | 1 | -2/+2 |
| | |||||
* | Handle closure return types | Florian Diebold | 2019-12-20 | 1 | -1/+2 |
| | | | | Fixes #2547. |