aboutsummaryrefslogtreecommitdiff
path: root/crates/ide/src/hover.rs
Commit message (Collapse)AuthorAgeFilesLines
* Merge #7321bors[bot]2021-01-191-6/+1
|\ | | | | | | | | | | | | | | 7321: Support runnables in macros r=matklad a=edwin0cheng fixes #4771 Co-authored-by: Edwin Cheng <[email protected]>
| * Support runnables in macrosEdwin Cheng2021-01-191-6/+1
| |
* | Wrap remaining self/super/crate in Name{Ref}Lukas Wirth2021-01-151-3/+2
|/
* Handle self/super/crate in PathSegment as NameRefLukas Wirth2021-01-151-7/+40
|
*-. Merge #7051 #7219 #7245 #7246bors[bot]2021-01-111-6/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7051: Check dbg! macro in tidy_test r=matklad a=edwin0cheng Same as `check_todo` but for dbg! macro r? @matklad 7219: Refactor rename name checking r=matklad a=Veykril Improves the user facing error messages a bit and prevents renaming to `_` when the name is referenced as this would change source to not compile anymore since `_` is only a pattern, not a proper identifier. 7245: Encourage gifs r=matklad a=matklad bors r+ 🤖 7246: Unfreeze cargo_metadata r=matklad a=kjeremy It now pulls in a newer version of semver-parser. This does add a dependency on `cargo-platform` in the interest of correctness. Co-authored-by: Edwin Cheng <[email protected]> Co-authored-by: Lukas Wirth <[email protected]> Co-authored-by: Aleksey Kladov <[email protected]> Co-authored-by: kjeremy <[email protected]>
| | * Refactor rename name checkingLukas Wirth2021-01-091-6/+1
| |/
* | Merge #7218bors[bot]2021-01-101-10/+10
|\ \ | | | | | | | | | | | | | | | | | | | | | 7218: Fix typos r=Veykril a=regexident Apart from the very last commit on this PR (which fixes a public type's name) all changes are non-breaking. Co-authored-by: Vincent Esche <[email protected]>
| * | Fixed typos in code commentsVincent Esche2021-01-091-10/+10
| |/
* | Merge #7206 #7231bors[bot]2021-01-101-7/+9
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7206: Use hir::GenericParam in ide_db::Definition instead of relisting all 3 r=Veykril a=Veykril Basically just this: ```diff pub enum Definition { Macro(MacroDef), Field(Field), ModuleDef(ModuleDef), SelfType(Impl), Local(Local), - TypeParam(TypeParam), - LifetimeParam(LifetimeParam), - ConstParam(ConstParam), + GenericParam(GenericParam), Label(Label), } ``` 7231: Cleaner API r=matklad a=matklad bors r+ 🤖 Co-authored-by: Lukas Wirth <[email protected]> Co-authored-by: Aleksey Kladov <[email protected]>
| * | Use hir::GenericParam in ide_db::Definition instead of relisting all 3Lukas Wirth2021-01-101-7/+9
| |/
* / CleanupAleksey Kladov2021-01-101-2/+2
|/
* Change <|> to $0 - RebaseKevaundray Wedderburn2021-01-071-108/+108
|
* Remove some stale deprecationsAleksey Kladov2021-01-071-2/+0
|
* More maintainable configAleksey Kladov2021-01-061-22/+7
| | | | | | | Rather than eagerly converting JSON, we losslessly keep it as is, and change the shape of user-submitted data at the last moment. This also allows us to remove a bunch of wrong Defaults
* Show GotoTypeAction for TypeParamLukas Wirth2021-01-041-17/+54
|
* Show GotoTypeAction for ConstParamLukas Wirth2021-01-041-37/+66
|
* Show implementations when hovering over SelfTypeLukas Wirth2021-01-041-8/+29
|
* Fix HoverAction::Implementation typoLukas Wirth2021-01-041-10/+11
|
* Implement hover for ConstParamLukas Wirth2021-01-041-4/+18
|
* Impl hovering for TypeParamsLukas Wirth2021-01-041-2/+50
|
* Move impls of ToNav that use source() to TryToNavNick Spain2021-01-021-5/+5
|
* source_old -> source for cases that can be handled by simple bubblingNick Spain2021-01-021-3/+3
|
* HasSource::source_old -> HasSource::source for places where proc-macros were ↵Nick Spain2021-01-021-8/+1
| | | | | | | | | | | | 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-021-0/+4
|
* HasSource::source -> HasSource::source_oldNick Spain2021-01-021-4/+4
| | | | To start migrating HasSource::source to return an Option.
* Show lifetimes and labels on hoverLukas Wirth2021-01-011-7/+43
|
* Add ConstParams to the ide layerLukas Wirth2021-01-011-1/+4
|
* Support labels in reference searchLukas Wirth2020-12-241-1/+1
|
* Align code_model name with ungrammarAleksey Kladov2020-12-201-2/+2
|
* Reduce test verbosityAleksey Kladov2020-12-181-403/+109
|
* NavTarget doesn't assume that it points to a symbolAleksey Kladov2020-12-181-37/+111
|
* Don't expose SyntaxKind from IDE APIAleksey Kladov2020-12-181-37/+37
| | | | | | 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.
* Merge #6901bors[bot]2020-12-181-0/+6
|\ | | | | | | | | | | | | | | | | | | 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-181-0/+6
| |
* | Rename ImplDef -> ImplAleksey Kladov2020-12-171-1/+1
| | | | | | | | | | | | We used to have `Def` suffix for all symbols, but we moved off from that. `FunctionDef` isn't better than `Function`. Looks like we've forgot to change `Impl` though!
* | Lifetime reference searchLukas Wirth2020-12-161-1/+1
|/
* Don't highlight parent nodes of comments on hoverLukas Wirth2020-12-111-0/+16
|
* Test inner and outer doc comments in hoverLukas Wirth2020-12-091-0/+62
|
* Remove hir_def/docs.rs moduleLukas Wirth2020-12-071-28/+36
|
* Don't insert blank lines between doc attributesLukas Wirth2020-12-071-2/+0
|
* Show type of Self on hoverLukas Wirth2020-11-291-45/+74
|
* Show type of self param on hoverLukas Wirth2020-11-281-3/+43
|
*-. Merge #6331 #6342bors[bot]2020-10-241-2/+29
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6331: correct hover text for items with doc attribute with raw strings r=matklad a=JoshMcguigan Fixes #6300 by improving the handling of raw string literals in attribute style doc comments. This still has a bug where it could consume too many `"` at the start or end of the comment text, just as the original code had. Not sure if we want to fix that as part of this PR or not? If so, I think I'd prefer to add a unit test for either the `as_simple_key_value` function (I'm not exactly sure where this would belong / how to set this up) or create a `fn(&SmolStr) -> &SmolStr` to unit test by factoring out the `trim` operations from `as_simple_key_value`. Thoughts on this? 6342: Shorter dependency chain r=matklad a=popzxc Continuing implementing suggestions from the `Completion refactoring` zulip thread. This PR does the following: - Removes dependency of `completions` on `assists` by moving required functionality into `ide_db`. - Moves completely `call_info` crate into `ide_db` as it looks like it fits perfect there. - Adds a bunch of new tests and docs. - Adds the re-export of `base_db` to the `ide_db` and removes direct dependency on `base_db` from other crates. The last point is controversial, I guess, but I noticed that in places where `ide_db` is used, `base_db` is also *always* used. Thus I think the dependency on the `base_db` is implied by the fact of `ide_db` interfaces, and thus it makes sense to just provide `base_db` out of the box. Co-authored-by: Josh Mcguigan <[email protected]> Co-authored-by: Igor Aleksanov <[email protected]>
| | * Re-export base_db from ide_dbIgor Aleksanov2020-10-241-2/+2
| |/ |/|
| * correct hover for items with doc attribute with raw stringsJosh Mcguigan2020-10-241-0/+27
| |
* | Emit better #[cfg] diagnosticsJonas Schievink2020-10-221-2/+2
|/
* Rename declaration_name -> display_nameAleksey Kladov2020-10-201-1/+1
| | | | | | | | Declaration names sounds like a name of declaration -- something you can use for analysis. It empathically isn't, and is just a label displayed in various UI. It's important not to confuse the two, least we accidentally mix semantics with UI (I believe, there's already a case of this in the FamousDefs at least).
* Clarify the names one more timeAleksey Kladov2020-10-151-2/+2
|
* More idiomatic classification APIAleksey Kladov2020-10-151-3/+3
|
* Clarify NameClass names a bitAleksey Kladov2020-10-151-1/+1
|