Skip to content

Commit 93f0307

Browse files
committed
Print local type parameters without prefix
1 parent 95ec081 commit 93f0307

File tree

3 files changed

+10
-8
lines changed

3 files changed

+10
-8
lines changed

library/src/scala/tasty/util/ShowSourceCode.scala

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -793,12 +793,14 @@ class ShowSourceCode[T <: Tasty with Singleton](tasty0: T) extends Show[T](tasty
793793
case Type.SymRef(sym, prefix) =>
794794
prefix match {
795795
case Types.EmptyPrefix() =>
796-
case prefix@Type.SymRef(ClassDef(_, _, _, _, _), _) =>
796+
case prefix @ Type.SymRef(ClassDef(_, _, _, _, _), _) =>
797797
printType(prefix)
798798
this += "#"
799-
case prefix@Type() =>
800-
printType(prefix)
801-
this += "."
799+
case prefix @ Type() =>
800+
if (!sym.flags.isLocal) {
801+
printType(prefix)
802+
this += "."
803+
}
802804
}
803805
printDefinitionName(sym)
804806

tests/pos/i2104b.decompiled

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,13 @@ case class Pair[A, B](_1: A, _2: B) {
1313
scala.runtime.Statics.finalizeHash(acc, 2)
1414
}
1515
override def equals(x$0: scala.Any): scala.Boolean = this.eq(x$0.asInstanceOf[java.lang.Object]).||(x$0 match {
16-
case x$0: Pair[Pair.this.A, Pair.this.B] @scala.unchecked() =>
16+
case x$0: Pair[A, B] @scala.unchecked() =>
1717
this._1.==(x$0._1).&&(this._2.==(x$0._2))
1818
case _ =>
1919
false
2020
})
2121
override def toString(): java.lang.String = scala.runtime.ScalaRunTime._toString(this)
22-
override def canEqual(that: scala.Any): scala.Boolean = that.isInstanceOf[Pair[Pair.this.A, Pair.this.B] @scala.unchecked()]
22+
override def canEqual(that: scala.Any): scala.Boolean = that.isInstanceOf[Pair[A, B] @scala.unchecked()]
2323
override def productArity: scala.Int = 2
2424
override def productPrefix: java.lang.String = "Pair"
2525
override def productElement(n: scala.Int): scala.Any = n match {

tests/pos/simpleCaseClass-3.decompiled

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@ case class A[T](x: T) {
66
scala.runtime.Statics.finalizeHash(acc, 1)
77
}
88
override def equals(x$0: scala.Any): scala.Boolean = this.eq(x$0.asInstanceOf[java.lang.Object]).||(x$0 match {
9-
case x$0: A[A.this.T] @scala.unchecked() =>
9+
case x$0: A[T] @scala.unchecked() =>
1010
this.x.==(x$0.x)
1111
case _ =>
1212
false
1313
})
1414
override def toString(): java.lang.String = scala.runtime.ScalaRunTime._toString(this)
15-
override def canEqual(that: scala.Any): scala.Boolean = that.isInstanceOf[A[A.this.T] @scala.unchecked()]
15+
override def canEqual(that: scala.Any): scala.Boolean = that.isInstanceOf[A[T] @scala.unchecked()]
1616
override def productArity: scala.Int = 1
1717
override def productPrefix: java.lang.String = "A"
1818
override def productElement(n: scala.Int): scala.Any = n match {

0 commit comments

Comments
 (0)