Skip to content

Commit 9c0d98e

Browse files
committed
Replace $. with . in type names to align with scala 2.
1 parent e724a28 commit 9c0d98e

File tree

3 files changed

+19
-2
lines changed

3 files changed

+19
-2
lines changed

build.sbt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,14 +63,15 @@ lazy val testLiteralOption = project.in(file("test-literal-option"))
6363
"-P:disableToString:literal=scala.Int",
6464
"-P:disableToString:literal=bl.Foo",
6565
"-P:disableToString:literal=bl.Bar",
66+
"-P:disableToString:literal=bl.testObj.Baz",
6667
)
6768
)
6869
.aggregate(disableToStringPlugin)
6970

7071
lazy val testRegexOption = project.in(file("test-regex-option"))
7172
.settings(testSettings)
7273
.settings(
73-
scalacOptions += "-P:disableToString:regex=^(scala\\.Boolean|scala\\.Int|bl\\.(Foo|Bar))$",
74+
scalacOptions += "-P:disableToString:regex=^(scala\\.Boolean|scala\\.Int|bl\\.(Foo|Bar|testObj\\.Baz))$",
7475
)
7576
.aggregate(disableToStringPlugin)
7677

src/main/scala-3/bl/DisableToStringPlugin.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ class DisableToStringPlugin extends StandardPlugin with BaseDisableToStringPlugi
7979
private object DisabledType {
8080
def unapply(tpe: Type)(using Context): Option[Type] = {
8181
val (stringOrShown, trueType) = isStringOrShown(tpe)
82-
val tpeName = trueType.typeSymbol.fullName.toString
82+
val tpeName = trueType.typeSymbol.fullName.toString.replace("$.", ".")
8383
if (!stringOrShown && configuredTypes.exists(_.findFirstIn(tpeName).nonEmpty)) Some(trueType) else None
8484
}
8585

tests/src/main/scala/bl/Example.scala

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,10 @@ object Bar {
5757
val catsShowFuncInterpAliased: cats.Show[Bar] = cats.Show.show(b => s"Bar(${b.i})")
5858
}
5959

60+
object testObj {
61+
case class Baz(b: Boolean)
62+
}
63+
6064
object DisableToString {
6165
val stringLitVal = "1"
6266
val stringVal = 1.toString: @annotation.nowarn("msg=instead of `Int.toString`")
@@ -94,6 +98,14 @@ object DisableToString {
9498
val showInterpBarVal = show"a $barVal b"
9599
val showInterpBarDef = show"a ${barDef()} b"
96100

101+
val bazVal = testObj.Baz(true)
102+
def bazDef() = testObj.Baz(true)
103+
val interpBazLit = s"a ${testObj.Baz(true): @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.testObj.Baz")} b"
104+
val interpBazVal = s"a ${bazVal: @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.testObj.Baz")} b"
105+
val interpBazDef = s"a ${bazDef(): @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.testObj.Baz")} b"
106+
val interpBazValMember = s"a ${bazVal.b: @annotation.nowarn("msg=Consider defining a `cats.Show\\[Boolean")} b"
107+
val interpBazDefMember = s"a ${bazDef().b: @annotation.nowarn("msg=Consider defining a `cats.Show\\[Boolean")} b"
108+
97109
val stringLitValPlusIntVal = "1" + (intVal: @annotation.nowarn("msg=Consider defining a `cats.Show\\[Int"))
98110
val stringLitValPlusIntDef = "1" + (intDef(): @annotation.nowarn("msg=Consider defining a `cats.Show\\[Int"))
99111
val stringLitValPlusBoolVal = "1" + (boolVal: @annotation.nowarn("msg=Consider defining a `cats.Show\\[Boolean"))
@@ -102,6 +114,8 @@ object DisableToString {
102114
val stringLitValPlusFooDef = "1" + (fooDef(): @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.Foo"))
103115
val stringLitValPlusBarVal = "1" + (barVal: @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.Bar"))
104116
val stringLitValPlusBarDef = "1" + (barDef(): @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.Bar"))
117+
val stringLitValPlusBazVal = "1" + (bazVal: @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.testObj.Baz"))
118+
val stringLitValPlusBazDef = "1" + (bazDef(): @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.testObj.Baz"))
105119

106120
def stringLitDefPlusIntVal() = "1" + (intVal: @annotation.nowarn("msg=Consider defining a `cats.Show\\[Int"))
107121
def stringLitDefPlusIntDef() = "1" + (intDef(): @annotation.nowarn("msg=Consider defining a `cats.Show\\[Int"))
@@ -111,6 +125,8 @@ object DisableToString {
111125
def stringLitDefPlusFooDef() = "1" + (fooDef(): @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.Foo"))
112126
def stringLitDefPlusBarVal() = "1" + (barVal: @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.Bar"))
113127
def stringLitDefPlusBarDef() = "1" + (barDef(): @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.Bar"))
128+
def stringLitDefPlusBazVal() = "1" + (bazVal: @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.testObj.Baz"))
129+
def stringLitDefPlusBazDef() = "1" + (bazDef(): @annotation.nowarn("msg=Consider defining a `cats.Show\\[bl.testObj.Baz"))
114130

115131
def goodSingleton[S <: Singleton with String](s: S) = s"a $s b"
116132

0 commit comments

Comments
 (0)