@@ -17,6 +17,7 @@ import scala.{meta => m}
17
17
18
18
import scala .meta .internal .semanticdb .scalac .SemanticdbOps
19
19
import scala .meta .io .AbsolutePath
20
+ import scala .reflect .NameTransformer
20
21
21
22
object ScalafixGlobal {
22
23
def newCompiler (
@@ -72,6 +73,9 @@ class ScalafixGlobal(
72
73
import scala .meta .internal .semanticdb .Scala ._
73
74
if (! symbol.isGlobal) return Nil
74
75
76
+ def EncodedTermName (str : String ): TermName = TermName (NameTransformer .encode(str))
77
+ def EncodedTypeName (str : String ): TypeName = TypeName (NameTransformer .encode(str))
78
+
75
79
def loop (s : String ): List [Symbol ] = {
76
80
if (s.isNone || s.isRootPackage) rootMirror.RootPackage :: Nil
77
81
else if (s.isEmptyPackage) rootMirror.EmptyPackage :: Nil
@@ -95,20 +99,20 @@ class ScalafixGlobal(
95
99
case Descriptor .None =>
96
100
Nil
97
101
case Descriptor .Type (value) =>
98
- val member = owner.info.decl(TypeName (value)) :: Nil
99
- if (sym.isJava) owner.info.decl(TermName (value)) :: member
102
+ val member = owner.info.decl(EncodedTypeName (value)) :: Nil
103
+ if (sym.isJava) owner.info.decl(EncodedTermName (value)) :: member
100
104
else member
101
105
case Descriptor .Term (value) =>
102
- owner.info.decl(TermName (value)) :: Nil
106
+ owner.info.decl(EncodedTermName (value)) :: Nil
103
107
case Descriptor .Package (value) =>
104
- owner.info.decl(TermName (value)) :: Nil
108
+ owner.info.decl(EncodedTermName (value)) :: Nil
105
109
case Descriptor .Parameter (value) =>
106
- owner.paramss.flatten.filter(_.name.containsName(value))
110
+ owner.paramss.flatten.filter(_.name.containsName(EncodedTermName ( value) ))
107
111
case Descriptor .TypeParameter (value) =>
108
- owner.typeParams.filter(_.name.containsName(value))
112
+ owner.typeParams.filter(_.name.containsName(EncodedTypeName ( value) ))
109
113
case Descriptor .Method (value, _) =>
110
114
owner.info
111
- .decl(TermName (value))
115
+ .decl(EncodedTermName (value))
112
116
.alternatives
113
117
.iterator
114
118
.filter(sym => semanticdbSymbol(sym) == s)
0 commit comments