Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge #1960 | bors[bot] | 2019-10-05 | 13 | -424/+346 |
|\ | | | | | | | | | | | | | | | 1960: Replace AST visitors with macro r=viorina a=viorina Fixes #1672. Co-authored-by: Ekaterina Babshukova <[email protected]> | ||||
| * | remove `visitor` module | Ekaterina Babshukova | 2019-10-05 | 4 | -139/+24 |
| | | |||||
| * | replace AST visitors with macro | Ekaterina Babshukova | 2019-10-05 | 10 | -297/+334 |
| | | |||||
* | | Merge #1928 | bors[bot] | 2019-10-05 | 28 | -66/+656 |
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1928: Support `#[cfg(..)]` r=matklad a=oxalica This PR implement `#[cfg(..)]` conditional compilation. It read default cfg options from `rustc --print cfg` with also hard-coded `test` and `debug_assertion` enabled. Front-end settings are **not** included in this PR. There is also a known issue that inner control attributes are totally ignored. I think it is **not** a part of `cfg` and create a separated issue for it. #1949 Fixes #1920 Related: #1073 Co-authored-by: uHOOCCOOHu <[email protected]> Co-authored-by: oxalica <[email protected]> | ||||
| * | Use raw cfgs in json project and fix typo | oxalica | 2019-10-05 | 3 | -9/+18 |
| | | |||||
| * | Add docs | uHOOCCOOHu | 2019-10-02 | 2 | -0/+6 |
| | | |||||
| * | Read default cfgs from rustc | uHOOCCOOHu | 2019-10-02 | 7 | -14/+75 |
| | | |||||
| * | Optimize | uHOOCCOOHu | 2019-10-02 | 5 | -13/+28 |
| | | |||||
| * | Refactor CfgOptions inside | uHOOCCOOHu | 2019-10-02 | 3 | -13/+20 |
| | | |||||
| * | Support cfg attribute on impl blocks | uHOOCCOOHu | 2019-10-02 | 5 | -13/+90 |
| | | |||||
| * | Enable CfgOptions `test` for workspace crates | uHOOCCOOHu | 2019-10-02 | 9 | -26/+134 |
| | | |||||
| * | Introduce ra_cfg to parse and evaluate CfgExpr | uHOOCCOOHu | 2019-10-02 | 10 | -27/+301 |
| | | |||||
| * | Pass attributes as token tree to DefCollector | uHOOCCOOHu | 2019-10-02 | 4 | -21/+54 |
| | | |||||
* | | [#1807] Refactor file structure | Lúcás Meier | 2019-10-04 | 1 | -33/+33 |
| | | | | | | | | | | Use the more conventional way of importing the ast types, and put the assist at the top of the file. | ||||
* | | Fix formatting | Lúcás Meier | 2019-10-04 | 1 | -22/+9 |
| | | |||||
* | | Create an assist for applying De Morgan's law | Lúcás Meier | 2019-10-03 | 1 | -0/+115 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #1807 This assist can transform expressions of the form `!x || !y` into `!(x && y)`. This also works with `&&`. This assist will only trigger if the cursor is on the central logical operator. The main limitation of this current implementation is that both operands need to be an explicit negation, either of the form `!x`, or `x != y`. More operands could be accepted, but this would complicate the implementation quite a bit. | ||||
* | | WIP: Add demorgan application with naive negation | Lúcás Meier | 2019-10-03 | 1 | -0/+2 |
| | | |||||
* | | Fix parsing of block expressions in "forbid_structs" contexts. | Geoffry Song | 2019-10-03 | 11 | -54/+242 |
| | | | | | | | | | | | | Forbidding block expressions entirely is too strict; instead, we should only forbid them in contexts where we are parsing an optional RHS (i.e. the RHS of a range expression). | ||||
* | | Merge #1945 | bors[bot] | 2019-10-02 | 2 | -3/+72 |
|\ \ | |/ |/| | | | | | | | | | | | | | | | 1945: Handle divergence in type inference for blocks r=flodiebold a=lnicola Fixes #1944. The `infer_basics` test is failing, not sure what to do about it. Co-authored-by: Laurențiu Nicola <[email protected]> | ||||
| * | Handle divergence in type inference for blocks | Laurențiu Nicola | 2019-10-02 | 2 | -3/+72 |
| | | |||||
* | | Update pico-args | kjeremy | 2019-10-02 | 3 | -6/+6 |
|/ | |||||
* | Change user message. | Alexander Andreev | 2019-09-30 | 1 | -1/+1 |
| | |||||
* | Drop debug strings. | Alexander Andreev | 2019-09-30 | 1 | -5/+1 |
| | |||||
* | Merge branch 'master' into feature/issue/1856 | Alexander Andreev | 2019-09-30 | 51 | -953/+1160 |
|\ | | | | | | | | | # Conflicts: # crates/ra_assists/src/ast_editor.rs | ||||
| * | Fixes | uHOOCCOOHu | 2019-09-30 | 2 | -19/+8 |
| | | |||||
| * | Fix API of Attr | uHOOCCOOHu | 2019-09-30 | 9 | -54/+32 |
| | | |||||
| * | Parse correct AttrInput | uHOOCCOOHu | 2019-09-30 | 33 | -601/+844 |
| | | |||||
| * | cleanup editor | Aleksey Kladov | 2019-09-30 | 2 | -5/+11 |
| | | |||||
| * | remove ast_editor.rs | Aleksey Kladov | 2019-09-30 | 4 | -59/+16 |
| | | |||||
| * | move remove bounds to ast/edit.rs | Aleksey Kladov | 2019-09-30 | 3 | -18/+16 |
| | | |||||
| * | move field list to ast/edit.rs | Aleksey Kladov | 2019-09-30 | 5 | -108/+106 |
| | | |||||
| * | migrate add impl items to the new editing API | Aleksey Kladov | 2019-09-28 | 4 | -80/+109 |
| | | |||||
| * | simplify strip attrs | Aleksey Kladov | 2019-09-28 | 5 | -29/+35 |
| | | |||||
| * | correctly reset chalk state after a panic | Aleksey Kladov | 2019-09-28 | 1 | -6/+9 |
| | | |||||
| * | replace horrible hack with a slightly less horrible one | Aleksey Kladov | 2019-09-27 | 2 | -3/+5 |
| | | |||||
* | | Added test for check doc strings in crates. | Alexander Andreev | 2019-09-30 | 171 | -29/+419 |
|/ | | | | #1856 | ||||
* | Merge #1815 | bors[bot] | 2019-09-27 | 20 | -126/+373 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1815: Support correct `$crate` expansion in macros r=uHOOCCOOHu a=uHOOCCOOHu This PR makes normal use cases of `$crate` from macros work as expected. It makes more macros from `std` work. Type inference works well with `panic`, `unimplemented`, `format`, and maybe more. Sadly that `vec![1, 2, 3]` still not works, but it is not longer an issue about macro. Screenshot: ![Screenshot_20190927_022136](https://user-images.githubusercontent.com/14816024/65714465-b4568f80-e0cd-11e9-8043-dd44c2ae8040.png) Co-authored-by: uHOOCCOOHu <[email protected]> | ||||
| * | Fix | uHOOCCOOHu | 2019-09-27 | 2 | -2/+2 |
| | | |||||
| * | Support `$crate` in item and expr place. | uHOOCCOOHu | 2019-09-26 | 14 | -37/+268 |
| | | |||||
| * | Store crate info in `MacroDefId` | uHOOCCOOHu | 2019-09-26 | 3 | -5/+11 |
| | | |||||
| * | Refactor `Name` ready for hygienic macro | uHOOCCOOHu | 2019-09-26 | 4 | -84/+94 |
| | | |||||
* | | Add SubstsBuilder | Florian Diebold | 2019-09-26 | 11 | -126/+212 |
| | | | | | | | | + further refactoring. | ||||
* | | Start simplifying editing API | Aleksey Kladov | 2019-09-26 | 12 | -82/+107 |
|/ | |||||
* | move diff to ra_syntax | Aleksey Kladov | 2019-09-26 | 2 | -24/+45 |
| | |||||
* | keep ast creation API simple | Aleksey Kladov | 2019-09-26 | 9 | -250/+213 |
| | |||||
* | Merge #1917 | bors[bot] | 2019-09-26 | 2 | -8/+2 |
|\ | | | | | | | | | | | | | | | 1917: disable periodic GC r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]> | ||||
| * | disable periodic GC | Aleksey Kladov | 2019-09-26 | 2 | -8/+2 |
| | | | | | | | | | | There's hypothesis that it doesn't do anything useful now that we have LRU... | ||||
* | | Support all coercion places | uHOOCCOOHu | 2019-09-25 | 3 | -96/+216 |
| | | |||||
* | | Support custom `CoerceUnsized` | uHOOCCOOHu | 2019-09-25 | 4 | -247/+476 |
| | | | | | | | | Split out tests about coercion | ||||
* | | Better handle never type and branch merging | uHOOCCOOHu | 2019-09-25 | 5 | -181/+392 |
| | | | | | | | | Split out tests for never type to another file |