Skip to content

Commit f96ab64

Browse files
committed
Homogenize Reflect.SelectOuter API
1 parent 9b9c9f8 commit f96ab64

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

compiler/src/dotty/tools/dotc/quoted/QuoteContextImpl.scala

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -955,13 +955,14 @@ class QuoteContextImpl private (ctx: Context) extends QuoteContext:
955955
withDefaultPos(tpd.Select(qualifier, NameKinds.OuterSelectName(name.toTermName, levels)))
956956
def copy(original: Tree)(qualifier: Term, name: String, levels: Int): SelectOuter =
957957
tpd.cpy.Select(original)(qualifier, NameKinds.OuterSelectName(name.toTermName, levels))
958-
def unapply(x: SelectOuter): Option[(Term, Int, Type)] = // TODO homogenize order of parameters
959-
Some((x.qualifier, x.level, x.tpe))
958+
def unapply(x: SelectOuter): Option[(Term, String, Int)] =
959+
Some((x.qualifier, x.name.toString, x.level))
960960
end SelectOuter
961961

962962
object SelectOuterMethodsImpl extends SelectOuterMethods:
963963
extension (self: SelectOuter):
964964
def qualifier: Term = self.qualifier
965+
def name: String = self.name.toString
965966
def level: Int =
966967
val NameKinds.OuterSelectName(_, levels) = self.name
967968
levels

library/src/scala/tasty/Reflection.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1107,7 +1107,7 @@ trait Reflection { reflection =>
11071107
trait SelectOuterModule { this: SelectOuter.type =>
11081108
def apply(qualifier: Term, name: String, levels: Int): SelectOuter
11091109
def copy(original: Tree)(qualifier: Term, name: String, levels: Int): SelectOuter
1110-
def unapply(x: SelectOuter): Option[(Term, Int, Type)] // TODO homogenize order of parameters
1110+
def unapply(x: SelectOuter): Option[(Term, String, Int)]
11111111
}
11121112

11131113
given SelectOuterMethods as SelectOuterMethods = SelectOuterMethodsImpl
@@ -1116,6 +1116,7 @@ trait Reflection { reflection =>
11161116
trait SelectOuterMethods:
11171117
extension (self: SelectOuter):
11181118
def qualifier: Term
1119+
def name: String
11191120
def level: Int
11201121
end extension
11211122
end SelectOuterMethods

0 commit comments

Comments
 (0)