aboutsummaryrefslogtreecommitdiff
path: root/crates/ide/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Impl hovering for TypeParamsLukas Wirth2021-01-041-2/+50
|
* Merge #7068bors[bot]2021-01-032-0/+30
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7068: Add VSCode command to view the hir of a function body r=theotherphil a=theotherphil Will fix https://github.com/rust-analyzer/rust-analyzer/issues/7061. Very rough initial version just to work out where I needed to wire everything up. @matklad would you be happy merging a hir visualiser of some kind? If so, do you have any thoughts on what you'd like it show, and how? I've spent very little time on this thus far, so I'm fine with throwing away the contents of this PR, but I want to avoid taking the time to make this more polished/interactive/useful only to discover that no-one else has any interest in this functionality. ![image](https://user-images.githubusercontent.com/1974256/103236081-bb58f700-493b-11eb-9d12-55ae1b870f8f.png) Co-authored-by: Phil Ellison <[email protected]>
| * Address review suggestion, fix tidy testsPhil Ellison2021-01-011-19/+5
| |
| * Initial implementation of view-hir commandPhil Ellison2020-12-282-0/+44
| |
* | Fix ConstParam HasSource impl and implement TryToNav not NavNick Spain2021-01-021-6/+6
| |
* | Move impls of ToNav that use source() to TryToNavNick Spain2021-01-025-69/+64
| |
* | source_old -> source for cases that can be handled by simple bubblingNick Spain2021-01-022-6/+6
| |
* | HasSource::source_old -> HasSource::source for places where proc-macros were ↵Nick Spain2021-01-022-22/+6
| | | | | | | | | | | | | | | | | | | | | | | | special cased In #6901 some special case handling for proc-macros was introduced to prevent panicing as they have no AST. Now the new HasSource::source method is used that returns an option. Generally this was a pretty trivial change, the only thing of much interest is that `hir::MacroDef` now implements `TryToNav` not `ToNav` as this allows us to handle `HasSource::source` now returning an option.
* | Mark HasSource::source_old as deprecated but allow at all call sitesNick Spain2021-01-023-0/+13
| |
* | HasSource::source -> HasSource::source_oldNick Spain2021-01-023-13/+13
| | | | | | | | To start migrating HasSource::source to return an Option.
* | Formatting.Mara Bos2021-01-011-2/+11
| |
* | Add support for Rust 2021.Mara Bos2021-01-012-2/+2
| |
* | Show lifetimes and labels on hoverLukas Wirth2021-01-011-7/+43
| |
* | Merge #7080bors[bot]2021-01-018-1/+50
|\ \ | | | | | | | | | | | | | | | | | | | | | 7080: Implement ConstParams for HIR r=Veykril a=Veykril r? @flodiebold Co-authored-by: Lukas Wirth <[email protected]>
| * | Add ConstParams to the ide layerLukas Wirth2021-01-018-1/+50
| |/
* | test for new behaviorAdnoC2020-12-301-0/+16
| |
* | Smarter bracketed use diagnosticAdnoC2020-12-301-0/+6
| |
* | Avoid a couple of allocationsLaurențiu Nicola2020-12-291-1/+1
|/
* Simplify assists resolution APIAleksey Kladov2020-12-261-14/+8
| | | | | | Assist vs UnresolvedAssist split doesn't really pull its weight. This is especially bad if we want to include `Assist` as a field of diagnostics, where we'd have to make the thing generic.
* Merge #7036bors[bot]2020-12-251-1/+39
|\ | | | | | | | | | | | | | | | | | | 7036: Don't split path separators apart in doctest runnables r=Veykril a=Veykril Fixes #7035 bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * Don't split path separators apart in doctest runnablesLukas Wirth2020-12-251-1/+39
| |
* | Simplify moreAleksey Kladov2020-12-241-43/+22
| |
* | SimplifyAleksey Kladov2020-12-241-35/+7
| |
* | Merge #7030bors[bot]2020-12-2418-8/+125
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 7030: Support labels in reference search r=matklad a=Veykril Implements general navigation for labels, goto def, rename and gives labels their own semantic highlighting class. Fixes #6966 Co-authored-by: Lukas Wirth <[email protected]>
| * | Support labels in reference searchLukas Wirth2020-12-2418-8/+125
| |/
* | pit-of-success API for unresolved code actionsAleksey Kladov2020-12-241-11/+11
| |
* | Prevent multiple incorrect case diagnostics in functionsunexge2020-12-231-0/+13
| |
* | Implement workspace/willRenameFiles for single-level file movesJeremy Kolb2020-12-232-1/+26
| | | | | | | | Renames modules during file rename if they're in the same directory.
* | Store invocation site for eager macrosJonas Schievink2020-12-221-0/+25
|/
* Merge #6746bors[bot]2020-12-222-0/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6746: Feature/add assist extract module to file r=matklad a=sasurau4 Fix #6522 ## Screenshot <img src="https://user-images.githubusercontent.com/13580199/102748269-33a44300-43a5-11eb-9e37-f5fcb8e62f73.gif" width=600 /> ## TODO - [x] Remove all TODO comment - [x] Pass the doc test Co-authored-by: Daiki Ihara <[email protected]>
| * Update test diagnostics in ideDaiki Ihara2020-12-211-0/+1
| |
| * Add initial_contents field for CreateFileDaiki Ihara2020-12-211-0/+1
| |
* | Acquire original text range when searching for referencesLukas Wirth2020-12-211-6/+42
|/
* Merge #6921bors[bot]2020-12-201-0/+28
|\ | | | | | | | | | | | | | | 6921: Higher-ranked trait bounds for where clauses r=flodiebold a=Veykril There is a slight problem with this which is also noted in a FIXME now but `LifetimeParameters` of these ForLifetime where clauses allocate the lifetimes in the corresponding arena as if they were lifetimes of the item itself and not just the clause they belong to. I wasn't entirely sure what I could do about this but given nothing really uses lifetimes like that currently I figured it might be fine? Open to suggestions for that problem. Co-authored-by: Lukas Wirth <[email protected]>
| * Higher-ranked trait bounds for where clausesLukas Wirth2020-12-171-0/+28
| |
* | Align code_model name with ungrammarAleksey Kladov2020-12-206-9/+9
| |
* | Add test_rename_bind_patbjorn32020-12-191-0/+35
| |
* | Make sure that HighlightModifier::ALL is synchronized with enumAleksey Kladov2020-12-196-36/+39
| |
* | Clarify the meaning of no-op highlight tagAleksey Kladov2020-12-193-14/+13
| |
* | Use more Rustic highlighting specifiersAleksey Kladov2020-12-197-45/+61
| | | | | | | | | | *Method* works for OO languages, but in rust we can also have associated constants & types, so let's move this to a modifier.
* | Deduplicate highlight tags and symbol kindsAleksey Kladov2020-12-185-96/+97
| | | | | | | | | | | | | | Curiously, LSP uses different enums for those, and unsurprising and annoyingly, there are things which exist in one but not in the other. Let's not repeat the mistake and unify the two things
* | Reduce test verbosityAleksey Kladov2020-12-183-597/+169
| |
* | NavTarget doesn't assume that it points to a symbolAleksey Kladov2020-12-185-74/+187
| |
* | Don't expose SyntaxKind from IDE APIAleksey Kladov2020-12-1810-207/+270
| | | | | | | | | | | | SyntaxKind is somewhat of an internal type, but IDE is using it to basically specify an icon. Let's have a dedicated entity for this instead.
* | Cleaup importsAleksey Kladov2020-12-181-7/+7
| | | | | | | | ide should re-export everything it needs.
* | Merge #6901bors[bot]2020-12-182-1/+15
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 6901: Temp fixes panic caused by no ast for proc-macro r=maklad a=edwin0cheng There are some panic when hover/goto definition for proc-macro. It is because in current design, we don't have `ast-node` for proc-macro and then it trigger [this](https://github.com/rust-analyzer/rust-analyzer/blob/479d1f7eec22c3564867223e2093f14774092528/crates/hir/src/has_source.rs#L116) line to panic. This PR is a temp fix for all of these similar to https://github.com/rust-analyzer/rust-analyzer/blob/bd4c352831662762ee7a66da77ec9adf623b0a0a/crates/completion/src/render/macro_.rs#L42 Co-authored-by: Edwin Cheng <[email protected]>
| * | Temp fixes panic caused by no ast for proc-macroEdwin Cheng2020-12-182-1/+15
| | |
* | | Rewrite doctest runnablesAleksey Kladov2020-12-172-107/+83
| | | | | | | | | | | | Handle more cases in a generic way without copy-pasting code.
* | | Minor code styleAleksey Kladov2020-12-171-27/+19
| | |
* | | Make `Attrs::from_attrs_owner` privateJonas Schievink2020-12-172-39/+11
| |/ |/|