File tree 1 file changed +9
-3
lines changed
src/dotty/tools/dotc/transform 1 file changed +9
-3
lines changed Original file line number Diff line number Diff line change @@ -226,12 +226,18 @@ trait FullParameterization {
226
226
}
227
227
228
228
object FullParameterization {
229
+
229
230
/** Assuming `info` is a result of a `fullyParameterizedType` call, the signature of the
230
231
* original method type `X` such that `info = fullyParameterizedType(X, ...)`.
231
232
*/
232
233
def memberSignature (info : Type )(implicit ctx : Context ): Signature = info match {
233
- case info : PolyType => memberSignature(info.resultType)
234
- case info @ MethodType (nme.SELF :: Nil , _) => info.resultType.ensureMethodic.signature
235
- case _ => Signature .NotAMethod
234
+ case info : PolyType =>
235
+ memberSignature(info.resultType)
236
+ case info @ MethodType (nme.SELF :: Nil , _) =>
237
+ info.resultType.ensureMethodic.signature
238
+ case info @ MethodType (nme.SELF :: otherNames, thisType :: otherTypes) =>
239
+ info.derivedMethodType(otherNames, otherTypes, info.resultType).signature
240
+ case _ =>
241
+ Signature .NotAMethod
236
242
}
237
243
}
You can’t perform that action at this time.
0 commit comments