aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* Merge #1928bors[bot]2019-10-0528-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 typooxalica2019-10-053-9/+18
| |
| * Add docsuHOOCCOOHu2019-10-022-0/+6
| |
| * Read default cfgs from rustcuHOOCCOOHu2019-10-027-14/+75
| |
| * OptimizeuHOOCCOOHu2019-10-025-13/+28
| |
| * Refactor CfgOptions insideuHOOCCOOHu2019-10-023-13/+20
| |
| * Support cfg attribute on impl blocksuHOOCCOOHu2019-10-025-13/+90
| |
| * Enable CfgOptions `test` for workspace cratesuHOOCCOOHu2019-10-029-26/+134
| |
| * Introduce ra_cfg to parse and evaluate CfgExpruHOOCCOOHu2019-10-0210-27/+301
| |
| * Pass attributes as token tree to DefCollectoruHOOCCOOHu2019-10-024-21/+54
| |
* | [#1807] Refactor file structureLúcás Meier2019-10-041-33/+33
| | | | | | | | | | Use the more conventional way of importing the ast types, and put the assist at the top of the file.
* | Fix formattingLúcás Meier2019-10-041-22/+9
| |
* | Create an assist for applying De Morgan's lawLúcás Meier2019-10-031-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 negationLúcás Meier2019-10-031-0/+2
| |
* | Fix parsing of block expressions in "forbid_structs" contexts.Geoffry Song2019-10-0311-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 #1945bors[bot]2019-10-022-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 blocksLaurențiu Nicola2019-10-022-3/+72
| |
* | Update pico-argskjeremy2019-10-023-6/+6
|/
* Change user message.Alexander Andreev2019-09-301-1/+1
|
* Drop debug strings.Alexander Andreev2019-09-301-5/+1
|
* Merge branch 'master' into feature/issue/1856Alexander Andreev2019-09-3051-953/+1160
|\ | | | | | | | | # Conflicts: # crates/ra_assists/src/ast_editor.rs
| * FixesuHOOCCOOHu2019-09-302-19/+8
| |
| * Fix API of AttruHOOCCOOHu2019-09-309-54/+32
| |
| * Parse correct AttrInputuHOOCCOOHu2019-09-3033-601/+844
| |
| * cleanup editorAleksey Kladov2019-09-302-5/+11
| |
| * remove ast_editor.rsAleksey Kladov2019-09-304-59/+16
| |
| * move remove bounds to ast/edit.rsAleksey Kladov2019-09-303-18/+16
| |
| * move field list to ast/edit.rsAleksey Kladov2019-09-305-108/+106
| |
| * migrate add impl items to the new editing APIAleksey Kladov2019-09-284-80/+109
| |
| * simplify strip attrsAleksey Kladov2019-09-285-29/+35
| |
| * correctly reset chalk state after a panicAleksey Kladov2019-09-281-6/+9
| |
| * replace horrible hack with a slightly less horrible oneAleksey Kladov2019-09-272-3/+5
| |
* | Added test for check doc strings in crates.Alexander Andreev2019-09-30171-29/+419
|/ | | | #1856
* Merge #1815bors[bot]2019-09-2720-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]>
| * FixuHOOCCOOHu2019-09-272-2/+2
| |
| * Support `$crate` in item and expr place.uHOOCCOOHu2019-09-2614-37/+268
| |
| * Store crate info in `MacroDefId`uHOOCCOOHu2019-09-263-5/+11
| |
| * Refactor `Name` ready for hygienic macrouHOOCCOOHu2019-09-264-84/+94
| |
* | Add SubstsBuilderFlorian Diebold2019-09-2611-126/+212
| | | | | | | | + further refactoring.
* | Start simplifying editing APIAleksey Kladov2019-09-2612-82/+107
|/
* move diff to ra_syntaxAleksey Kladov2019-09-262-24/+45
|
* keep ast creation API simpleAleksey Kladov2019-09-269-250/+213
|
* Merge #1917bors[bot]2019-09-262-8/+2
|\ | | | | | | | | | | | | | | 1917: disable periodic GC r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * disable periodic GCAleksey Kladov2019-09-262-8/+2
| | | | | | | | | | There's hypothesis that it doesn't do anything useful now that we have LRU...
* | Support all coercion placesuHOOCCOOHu2019-09-253-96/+216
| |
* | Support custom `CoerceUnsized`uHOOCCOOHu2019-09-254-247/+476
| | | | | | | | Split out tests about coercion
* | Better handle never type and branch merginguHOOCCOOHu2019-09-255-181/+392
| | | | | | | | Split out tests for never type to another file
* | Support basic implicit type coerceuHOOCCOOHu2019-09-252-142/+383
| |
* | Support auto-deref in argument positionuHOOCCOOHu2019-09-252-1/+161
|/
* Merge #1912bors[bot]2019-09-256-31/+119
|\ | | | | | | | | | | | | | | 1912: add new editing API, suitable for modifying several nodes at once r=viorina a=matklad r? @viorina Co-authored-by: Aleksey Kladov <[email protected]>