aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* Use Attrs::docs in runnables instead of DocCommentsOwnerLukas Wirth2020-12-112-12/+12
|
* Improve code structureAleksey Kladov2020-12-112-25/+23
| | | | | Make sure that there's only one entry point, analyze, remove awkard analyzer2 name
* Use natural trait ordering in derive completionAleksey Kladov2020-12-111-17/+18
| | | | | | | | derive(Clone, Copy) reads better than derive(Copy, Clone). However, we preserve the reverse ordering in the lookup text for sorting purposes. That way, it's convenient to type just `Ord` to derive everything.
* Merge #6807bors[bot]2020-12-102-0/+40
|\ | | | | | | | | | | | | | | | | | | 6807: Replicate Cargo environment variables r=jonas-schievink a=jonas-schievink These might be relied on by procedural macros, and can also be accessed via `env!`. Required for fixing https://github.com/rust-analyzer/rust-analyzer/issues/6696. We do not yet propagate these to any proc macros though. Co-authored-by: Jonas Schievink <[email protected]>
| * Use itertoolsJonas Schievink2020-12-102-3/+4
| |
| * Replicate Cargo environment variablesJonas Schievink2020-12-101-0/+39
| |
* | Merge #6804bors[bot]2020-12-101-3/+9
|\ \ | |/ |/| | | | | | | | | | | | | | | 6804: Bump the macro token limit r=jonas-schievink a=jonas-schievink Should fix https://github.com/rust-analyzer/rust-analyzer/issues/6504 Not entirely sure what the previous limit was based on, but it looks like it does get hit in practice. Co-authored-by: Jonas Schievink <[email protected]>
| * Use decimal notationJonas Schievink2020-12-101-1/+1
| |
| * Double the macro token limitJonas Schievink2020-12-101-1/+1
| |
| * Improve macro limit error and move to constJonas Schievink2020-12-101-3/+9
| |
* | Merge #6805bors[bot]2020-12-101-8/+14
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 6805: Fix accidently quadratic syntax rewriter r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Fix accidently quadratic syntax rewriterAleksey Kladov2020-12-101-8/+14
| | | | | | | | | | | | | | | | | | Switching from SyntaxNode to GreenNode is a costly operation (b/c dereferencing a synax ptr in `with_green` is linear), so we should avoid that.
* | | Merge #6769bors[bot]2020-12-105-5/+86
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | 6769: Add native "remove this semicolon" diagnostics r=matklad a=ivan770 Closes #6739 ![demo2](https://user-images.githubusercontent.com/14003886/101530533-b76c3180-399a-11eb-9d18-5c8457721655.gif) Co-authored-by: ivan770 <[email protected]>
| * | Cast to ExprStmt, style fixesivan7702020-12-102-10/+9
| | |
| * | Apply rustfmt changesivan7702020-12-091-9/+8
| | |
| * | Apply suggestions from code reviewivan7702020-12-091-17/+20
| | | | | | | | | Co-authored-by: bjorn3 <[email protected]>
| * | Format codeivan7702020-12-083-8/+24
| | |
| * | Remove unused useivan7702020-12-081-1/+1
| | |
| * | Remove use via superivan7702020-12-081-3/+1
| | |
| * | Remove this semicolonivan7702020-12-085-8/+74
| | |
* | | Remove debug printAleksey Kladov2020-12-101-7/+5
| |/ |/|
* | Merge #6798bors[bot]2020-12-105-446/+43
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 6798: Ignore extern items in incorrect-case check r=jonas-schievink a=jonas-schievink Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6736 bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | Use mark/hitJonas Schievink2020-12-101-0/+7
| | |
| * | Remove item tree testsJonas Schievink2020-12-102-441/+0
| | | | | | | | | | | | | | | They were useful during initial development of the item tree, but now just cause churn
| * | Ignore extern items in incorrect-case checkJonas Schievink2020-12-104-5/+36
| | |
* | | Minor, more orthogonal codeAleksey Kladov2020-12-104-16/+12
| | | | | | | | | | | | It's better to accept things as arguments rather than store them.
* | | Normalize spelling to American EnglishAleksey Kladov2020-12-109-43/+43
|/ /
* | Fix FileId computation in IncorrectCase fixJonas Schievink2020-12-101-4/+4
| |
* | format_args: handle key-value argumentsJonas Schievink2020-12-101-0/+6
| |
* | Send a CodeLensRefresh when we reloadkjeremy2020-12-092-0/+13
| |
* | Implement HirDisplay for FnSigJonas Schievink2020-12-091-20/+23
| | | | | | | | This could be useful for diagnostics, but isn't used right now
* | Merge #6785bors[bot]2020-12-093-8/+19
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6785: Fix "no value set for FileTextQuery(FileId(..))" r=jonas-schievink a=jonas-schievink Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6622 Let's hope I got it right this time, but I feel like I slowly begin to understand the main loop logic. bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | Fix "no value set for FileTextQuery(FileId(..))"Jonas Schievink2020-12-093-8/+19
| | |
* | | Introduce anchored_pathAleksey Kladov2020-12-0913-65/+79
| | | | | | | | | | | | | | | They allow to represent paths like `#[path = "C:\path.rs"] mod foo;` in a lossless cross-platform & network-transparent way.
* | | .Aleksey Kladov2020-12-094-8/+52
|/ /
* | Avoid nesting Subtrees when parsing TokenStreamJonas Schievink2020-12-091-2/+1
| |
* | Merge #6771bors[bot]2020-12-093-5/+117
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6771: Properly attach inner attributes in Attrs::new r=matklad a=Veykril Properly attach inner and outer attributes to the things they actually belong to in the HIR. ~~I can add some tests for this if wanted once I know where to put them/how to test for this.~~ Put some tests into `hover.rs`. So the following snippet ```rust mod foo { //! Hello } ``` now shows `Hello` on hover 🎉 Fixes #2148 Co-authored-by: Lukas Wirth <[email protected]>
| * | Test inner and outer doc comments in hoverLukas Wirth2020-12-091-0/+62
| | |
| * | Properly fetch inner and outer docs on hir-levelLukas Wirth2020-12-092-17/+33
| | |
| * | Properly fetch inner and outer attributes on hir-levelLukas Wirth2020-12-081-5/+39
| |/
* | Merge #6776bors[bot]2020-12-091-18/+57
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 6776: Include config into the manual r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Include config into the manualAleksey Kladov2020-12-091-18/+57
| | |
* | | Merge #6775bors[bot]2020-12-091-2/+3
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 6775: Fix MissingFields DiagnosticFix trigger range r=lnicola a=Veykril Fixes #5950 Co-authored-by: Lukas Wirth <[email protected]>
| * | Fix MissingFields DiagnosticFix trigger rangeLukas Wirth2020-12-091-2/+3
| |/
* | Merge #6774bors[bot]2020-12-091-2/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | 6774: Increment recursion count in Expander only on success r=lnicola a=Veykril Fixes #6764 Co-authored-by: Lukas Wirth <[email protected]>
| * | Properly decrement recursion count in ExpanderLukas Wirth2020-12-091-2/+2
| |/
* | Fix `concat!` with integer literalsJonas Schievink2020-12-081-8/+34
| |
* | Better error when a proc macro panicsJonas Schievink2020-12-081-1/+2
| |
* | Merge #6761bors[bot]2020-12-085-112/+354
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6761: Make config.rs a single source of truth for configuration. r=matklad a=matklad Configuration is editor-independent. For this reason, we pick JSON-schema as the repr of the source of truth. We do specify it using rust-macros and some quick&dirty hackery though. The idea for syncing truth with package.json is to just do that manually, but there's a test to check that they are actually synced. I'll add something like `rust-analyzer --config-schema` in a follow-up commit. Co-authored-by: Aleksey Kladov <[email protected]>
| * | Make config.rs a single source of truth for configuration.Aleksey Kladov2020-12-085-112/+354
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Configuration is editor-independent. For this reason, we pick JSON-schema as the repr of the source of truth. We do specify it using rust-macros and some quick&dirty hackery though. The idea for syncing truth with package.json is to just do that manually, but there's a test to check that they are actually synced. There's CLI to print config's json schema: $ rust-analyzer --print-config-schema We go with a CLI rather than LSP request/response to make it easier to incorporate the thing into extension's static config. This is roughtly how we put the thing in package.json.