Skip to content

Commit ec0c6b2

Browse files
authored
Merge pull request #50 from dwijnand/just-unpickle
2 parents b3c5c8c + 11145e9 commit ec0c6b2

File tree

1 file changed

+4
-18
lines changed

1 file changed

+4
-18
lines changed

rewrites/src/main/scala/impl/Power.scala

Lines changed: 4 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package impl
22

33
import scala.meta._
44
import scala.meta.internal.pc.ScalafixGlobal
5-
import scala.meta.internal.proxy.GlobalProxy
65

76
import scalafix.v1._
87
import scalafix.internal.rule.CompilerException
@@ -11,28 +10,15 @@ import scalafix.internal.rule.CompilerException
1110
// From scalafix-rules/src/main/scala/scalafix/internal/rule/CompilerTypePrinter.scala#L55
1211
// in scalacenter/scalafix (at db93793c2a8f80d0e7bbcacef729dc5c2fa7ceb8).
1312
final class Power(g: ScalafixGlobal)(implicit doc: SemanticDocument) {
14-
private lazy val unit = g.newCompilationUnit(doc.input.text, doc.input.syntax)
15-
1613
def isJavaDefined(t: Tree): Boolean = try {
17-
val meth = gsymbol(t)
18-
isJavaDefined1(meth) || meth.overrides.exists(isJavaDefined1)
14+
gsymbol(t).overrideChain.exists(sym => sym.isJavaDefined || sym.owner == g.definitions.AnyClass)
1915
} catch {
2016
case e: Throwable => throw CompilerException(e)
2117
}
2218

23-
private def isJavaDefined1(sym: g.Symbol) =
24-
sym.isJavaDefined || sym.owner == g.definitions.AnyClass
25-
2619
private def gsymbol(t: Tree): g.Symbol = {
27-
GlobalProxy.typedTreeAt(g, unit.position(t.pos.start))
28-
29-
val sym = g
30-
.inverseSemanticdbSymbols(t.symbol.value)
31-
.find(t.symbol.value == g.semanticdbSymbol(_))
32-
.getOrElse(g.NoSymbol)
33-
34-
if (sym.info.exists(g.definitions.NothingTpe == _))
35-
sym.overrides.lastOption.getOrElse(sym)
36-
else sym
20+
val sSym = t.symbol
21+
val gSymbols = g.inverseSemanticdbSymbols(sSym.value)
22+
gSymbols.find(gSym => g.semanticdbSymbol(gSym) == sSym.value).getOrElse(g.NoSymbol)
3723
}
3824
}

0 commit comments

Comments
 (0)