Skip to content

Commit e2c456f

Browse files
rochalakasiaMarek
andauthored
Delias type members in hover (#20173)
Fixes scalameta/metals#6230 --------- Co-authored-by: Katarzyna Marek <[email protected]>
1 parent 5c8e5e2 commit e2c456f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+100
-69
lines changed

presentation-compiler/src/main/dotty/tools/pc/AutoImports.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import dotty.tools.dotc.core.Names.*
1313
import dotty.tools.dotc.core.Symbols.*
1414
import dotty.tools.dotc.util.SourcePosition
1515
import dotty.tools.dotc.util.Spans
16-
import dotty.tools.pc.utils.MtagsEnrichments.*
16+
import dotty.tools.pc.utils.InteractiveEnrichments.*
1717

1818
import org.eclipse.lsp4j as l
1919

presentation-compiler/src/main/dotty/tools/pc/AutoImportsProvider.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import dotty.tools.dotc.interactive.InteractiveDriver
1515
import dotty.tools.dotc.util.SourceFile
1616
import dotty.tools.pc.AutoImports.*
1717
import dotty.tools.pc.completions.CompletionPos
18-
import dotty.tools.pc.utils.MtagsEnrichments.*
18+
import dotty.tools.pc.utils.InteractiveEnrichments.*
1919

2020
import org.eclipse.lsp4j as l
2121

presentation-compiler/src/main/dotty/tools/pc/CompletionItemResolver.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import dotty.tools.dotc.core.Contexts.Context
99
import dotty.tools.dotc.core.Flags.*
1010
import dotty.tools.dotc.core.Symbols.*
1111
import dotty.tools.dotc.core.Types.TermRef
12-
import dotty.tools.pc.utils.MtagsEnrichments.*
12+
import dotty.tools.pc.utils.InteractiveEnrichments.*
1313

1414
import org.eclipse.lsp4j.CompletionItem
1515

@@ -62,7 +62,7 @@ object CompletionItemResolver extends ItemResolver:
6262
if companion == NoSymbol || gsym.is(JavaDefined) then
6363
if gsymDoc.isEmpty() then
6464
if gsym.isAliasType then
65-
fullDocstring(gsym.info.metalsDealias.typeSymbol, search)
65+
fullDocstring(gsym.info.deepDealias.typeSymbol, search)
6666
else if gsym.is(Method) then
6767
gsym.info.finalResultType match
6868
case tr @ TermRef(_, sym) =>

presentation-compiler/src/main/dotty/tools/pc/ConvertToNamedArgumentsProvider.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import dotty.tools.dotc.core.Types.MethodType
1212
import dotty.tools.dotc.interactive.Interactive
1313
import dotty.tools.dotc.interactive.InteractiveDriver
1414
import dotty.tools.dotc.util.SourceFile
15-
import dotty.tools.pc.utils.MtagsEnrichments.*
15+
import dotty.tools.pc.utils.InteractiveEnrichments.*
1616

1717
import org.eclipse.lsp4j as l
1818

presentation-compiler/src/main/dotty/tools/pc/ExtractMethodProvider.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import dotty.tools.dotc.util.SourceFile
2323
import dotty.tools.dotc.util.SourcePosition
2424
import dotty.tools.pc.printer.ShortenedTypePrinter
2525
import dotty.tools.pc.printer.ShortenedTypePrinter.IncludeDefaultParam
26-
import dotty.tools.pc.utils.MtagsEnrichments.*
26+
import dotty.tools.pc.utils.InteractiveEnrichments.*
2727

2828
import org.eclipse.lsp4j.TextEdit
2929
import org.eclipse.lsp4j as l

presentation-compiler/src/main/dotty/tools/pc/HoverProvider.scala

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import dotty.tools.dotc.util.SourceFile
2323
import dotty.tools.dotc.util.SourcePosition
2424
import dotty.tools.pc.printer.ShortenedTypePrinter
2525
import dotty.tools.pc.printer.ShortenedTypePrinter.IncludeDefaultParam
26-
import dotty.tools.pc.utils.MtagsEnrichments.*
26+
import dotty.tools.pc.utils.InteractiveEnrichments.*
2727

2828
object HoverProvider:
2929

@@ -106,7 +106,7 @@ object HoverProvider:
106106
if symbol.name == nme.selectDynamic || symbol.name == nme.applyDynamic =>
107107
fallbackToDynamics(path, printer)
108108
case symbolTpes @ ((symbol, tpe) :: _) =>
109-
val exprTpw = tpe.widenTermRefExpr.metalsDealias
109+
val exprTpw = tpe.widenTermRefExpr.deepDealias
110110
val hoverString =
111111
tpw match
112112
// https://github.com/scala/scala3/issues/8891
@@ -121,7 +121,7 @@ object HoverProvider:
121121
if tpe != NoType then tpe
122122
else tpw
123123

124-
printer.hoverSymbol(sym, finalTpe)
124+
printer.hoverSymbol(sym, finalTpe.deepDealias)
125125
end match
126126
end hoverString
127127

@@ -185,9 +185,9 @@ object HoverProvider:
185185
findRefinement(parent)
186186
case _ => None
187187

188-
val refTpe = sel.typeOpt.widen.metalsDealias match
188+
val refTpe = sel.typeOpt.widen.deepDealias match
189189
case r: RefinedType => Some(r)
190-
case t: (TermRef | TypeProxy) => Some(t.termSymbol.info.metalsDealias)
190+
case t: (TermRef | TypeProxy) => Some(t.termSymbol.info.deepDealias)
191191
case _ => None
192192

193193
refTpe.flatMap(findRefinement).asJava

presentation-compiler/src/main/dotty/tools/pc/IndexedContext.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import dotty.tools.dotc.core.Types.*
1313
import dotty.tools.dotc.interactive.Interactive
1414
import dotty.tools.dotc.typer.ImportInfo
1515
import dotty.tools.pc.IndexedContext.Result
16-
import dotty.tools.pc.utils.MtagsEnrichments.*
16+
import dotty.tools.pc.utils.InteractiveEnrichments.*
1717

1818
sealed trait IndexedContext:
1919
given ctx: Context
@@ -75,7 +75,7 @@ sealed trait IndexedContext:
7575
)
7676

7777
private def isTypeAliasOf(alias: Symbol, queriedSym: Symbol): Boolean =
78-
alias.isAliasType && alias.info.metalsDealias.typeSymbol == queriedSym
78+
alias.isAliasType && alias.info.deepDealias.typeSymbol == queriedSym
7979

8080
final def isEmpty: Boolean = this match
8181
case IndexedContext.Empty => true

presentation-compiler/src/main/dotty/tools/pc/InferredTypeProvider.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ import dotty.tools.dotc.util.Spans
2424
import dotty.tools.dotc.util.Spans.Span
2525
import dotty.tools.pc.printer.ShortenedTypePrinter
2626
import dotty.tools.pc.printer.ShortenedTypePrinter.IncludeDefaultParam
27-
import dotty.tools.pc.utils.MtagsEnrichments.*
27+
import dotty.tools.pc.utils.InteractiveEnrichments.*
2828

2929
import org.eclipse.lsp4j.TextEdit
3030
import org.eclipse.lsp4j as l
@@ -101,7 +101,7 @@ final class InferredTypeProvider(
101101
case _ => true
102102
if isInScope(tpe)
103103
then tpe
104-
else tpe.metalsDealias
104+
else tpe.deepDealias
105105

106106
val printer = ShortenedTypePrinter(
107107
symbolSearch,

presentation-compiler/src/main/dotty/tools/pc/MetalsInteractive.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,7 @@ object MetalsInteractive:
240240
end match
241241
end enclosingSymbolsWithExpressionType
242242

243-
import dotty.tools.pc.utils.MtagsEnrichments.*
243+
import dotty.tools.pc.utils.InteractiveEnrichments.*
244244

245245
private def recoverError(
246246
tree: Tree,

presentation-compiler/src/main/dotty/tools/pc/PcCollector.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ import dotty.tools.dotc.interactive.InteractiveDriver
2626
import dotty.tools.dotc.util.SourceFile
2727
import dotty.tools.dotc.util.SourcePosition
2828
import dotty.tools.dotc.util.Spans.Span
29-
import dotty.tools.pc.utils.MtagsEnrichments.*
29+
import dotty.tools.pc.utils.InteractiveEnrichments.*
3030

3131
abstract class PcCollector[T](
3232
driver: InteractiveDriver,

0 commit comments

Comments
 (0)