Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Next gen IDs for functions | Aleksey Kladov | 2019-11-20 | 1 | -1/+9 | |
| | | | | | | | | | | | | | | | | | The current system with AstIds has two primaraly drawbacks: * It is possible to manufacture IDs out of thin air. For example, it's possible to create IDs for items which are not considered in CrateDefMap due to cfg. Or it is possible to mixup structs and unions, because they share ID space. * Getting the ID of a parent requires a secondary index. Instead, the plan is to pursue the more traditional approach, where each items stores the id of the parent declaration. This makes `FromSource` more awkward, but also more correct: now, to get from an AST to HIR, we first do this recursively for the parent item, and the just search the children of the parent for the matching def | |||||
* | Allow non-path default type parameters | Aleksey Kladov | 2019-11-20 | 3 | -9/+9 | |
| | ||||||
* | :arrow_up: rowan | Aleksey Kladov | 2019-11-19 | 2 | -18/+17 | |
| | ||||||
* | Remove the custom impl of AttrsOwner for ImplItem | DJMcNab | 2019-11-18 | 3 | -12/+4 | |
| | | | | | | The default impl should have the same behaviour, and it can be generated by codegen. See also `ModuleItem` and `NominalDef` | |||||
* | Add ast for plain and raw string literals | Aleksey Kladov | 2019-11-16 | 1 | -10/+85 | |
| | ||||||
* | Force passing Source when creating a SourceAnalyzer | Aleksey Kladov | 2019-11-15 | 1 | -2/+4 | |
| | ||||||
* | Attempt to implement typed accessors | Geoffry Song | 2019-11-15 | 3 | -7/+49 | |
| | ||||||
* | Move inclusive range check to validation | Geoffry Song | 2019-11-15 | 2 | -0/+18 | |
| | ||||||
* | Make make:: builders slightly more convenient | Aleksey Kladov | 2019-11-13 | 2 | -9/+12 | |
| | ||||||
* | Use strongly-typed ast building for early-return assist | Aleksey Kladov | 2019-11-13 | 1 | -21/+31 | |
| | ||||||
* | Forbid visibility qualifiers in traits | Aleksey Kladov | 2019-11-11 | 2 | -1/+26 | |
| | ||||||
* | Merge #2149 | bors[bot] | 2019-11-04 | 1 | -0/+17 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | 2149: Handle IfLet in convert_to_guarded_return. r=matklad a=krk Fixes https://github.com/rust-analyzer/rust-analyzer/issues/2124 I could not move the cursor position out of `let`: `le<|>t` vs `let<|>`. Also, please suggest extra test cases. Co-authored-by: krk <[email protected]> | |||||
| * | Support paths other than "Some". | krk | 2019-11-01 | 1 | -2/+3 | |
| | | ||||||
| * | Handle IfLet in convert_to_guarded_return. | krk | 2019-10-31 | 1 | -0/+16 | |
| | | ||||||
* | | Attach docs to statics | kjeremy | 2019-10-31 | 2 | -1/+15 | |
| | | ||||||
* | | traits => match_ast! | kjeremy | 2019-10-30 | 1 | -5/+7 | |
|/ | ||||||
* | Document match_ast! | kjeremy | 2019-10-30 | 1 | -0/+14 | |
| | ||||||
* | Some clippy fixes | kjeremy | 2019-10-30 | 1 | -2/+2 | |
| | ||||||
* | Preserve whitespace at the end of doc comments | Jeremy Kolb | 2019-10-27 | 2 | -4/+27 | |
| | | | | | | | | Whitespace can have special meaning in markdown. For instance ending a line with three spaces will render a new line. Note that this behavior diverges from RLS. Fixes #1997 | |||||
* | use correct spacing for enum pattern | Aleksey Kladov | 2019-10-26 | 1 | -1/+1 | |
| | ||||||
* | Adds "replace with guarded return" assist | Mikhail Modin | 2019-10-20 | 2 | -0/+36 | |
| | ||||||
* | rename tools -> xtask | Aleksey Kladov | 2019-10-17 | 1 | -1/+1 | |
| | ||||||
* | add syntax-tree based indents | Aleksey Kladov | 2019-10-12 | 2 | -6/+91 | |
| | ||||||
* | Merge #1960 | bors[bot] | 2019-10-05 | 4 | -132/+31 | |
|\ | | | | | | | | | | | | | | | 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 | 3 | -136/+21 | |
| | | ||||||
| * | replace AST visitors with macro | Ekaterina Babshukova | 2019-10-05 | 2 | -8/+22 | |
| | | ||||||
* | | Merge #1928 | bors[bot] | 2019-10-05 | 2 | -1/+3 | |
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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]> | |||||
| * | Pass attributes as token tree to DefCollector | uHOOCCOOHu | 2019-10-02 | 2 | -1/+3 | |
| | | ||||||
* | | Fix parsing of block expressions in "forbid_structs" contexts. | Geoffry Song | 2019-10-03 | 1 | -1/+1 | |
|/ | | | | | | 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 branch 'master' into feature/issue/1856 | Alexander Andreev | 2019-09-30 | 7 | -59/+316 | |
|\ | | | | | | | | | # Conflicts: # crates/ra_assists/src/ast_editor.rs | |||||
| * | Fixes | uHOOCCOOHu | 2019-09-30 | 1 | -9/+0 | |
| | | ||||||
| * | Fix API of Attr | uHOOCCOOHu | 2019-09-30 | 4 | -47/+26 | |
| | | ||||||
| * | Parse correct AttrInput | uHOOCCOOHu | 2019-09-30 | 2 | -1/+46 | |
| | | ||||||
| * | cleanup editor | Aleksey Kladov | 2019-09-30 | 1 | -1/+4 | |
| | | ||||||
| * | remove ast_editor.rs | Aleksey Kladov | 2019-09-30 | 1 | -0/+12 | |
| | | ||||||
| * | move remove bounds to ast/edit.rs | Aleksey Kladov | 2019-09-30 | 1 | -1/+15 | |
| | | ||||||
| * | move field list to ast/edit.rs | Aleksey Kladov | 2019-09-30 | 2 | -3/+96 | |
| | | ||||||
| * | migrate add impl items to the new editing API | Aleksey Kladov | 2019-09-28 | 1 | -3/+94 | |
| | | ||||||
| * | simplify strip attrs | Aleksey Kladov | 2019-09-28 | 3 | -3/+32 | |
| | | ||||||
* | | Added test for check doc strings in crates. | Alexander Andreev | 2019-09-30 | 11 | -1/+21 | |
|/ | | | | #1856 | |||||
* | Merge #1815 | bors[bot] | 2019-09-27 | 1 | -0/+10 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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]> | |||||
| * | Refactor `Name` ready for hygienic macro | uHOOCCOOHu | 2019-09-26 | 1 | -0/+10 | |
| | | ||||||
* | | Start simplifying editing API | Aleksey Kladov | 2019-09-26 | 3 | -0/+101 | |
|/ | ||||||
* | move diff to ra_syntax | Aleksey Kladov | 2019-09-26 | 1 | -0/+42 | |
| | ||||||
* | keep ast creation API simple | Aleksey Kladov | 2019-09-26 | 2 | -0/+136 | |
| | ||||||
* | add new editing API, suitable for modifying several nodes at once | Aleksey Kladov | 2019-09-25 | 2 | -0/+41 | |
| | ||||||
* | fewer monomorphisations | Aleksey Kladov | 2019-09-25 | 1 | -2/+2 | |
| | ||||||
* | simplify | Aleksey Kladov | 2019-09-24 | 1 | -4/+1 | |
| | ||||||
* | Support path starting with a type | uHOOCCOOHu | 2019-09-15 | 2 | -1/+4 | |
| | ||||||
* | Add `DotDotPat` to AST | Dylan MacKenzie | 2019-09-15 | 2 | -2/+38 | |
| | | | | This is modeled on `PlaceholderPat`. |