Do not write "? extends" and "? super" in immediate arguments of supertypes in Java generic signatures

This commit is contained in:
Andrey Breslav
2013-10-08 20:11:15 +04:00
parent 31c14c33e0
commit 7f46d7555e
12 changed files with 97 additions and 35 deletions
@@ -0,0 +1,6 @@
trait Derived<A>: List<A>
// class: Derived
// jvm signature: Derived
// generic signature: <A:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/List<TA;>;
@@ -0,0 +1,7 @@
open class Base<A, in B, out C>
class Derived<A, B, C>: Base<A, B, C>()
// class: Derived
// jvm signature: Derived
// generic signature: <A:Ljava/lang/Object;B:Ljava/lang/Object;C:Ljava/lang/Object;>LBase<TA;TB;TC;>;
@@ -0,0 +1,7 @@
trait Base<A, in B, out C>
class Derived<A, B, C>: Base<A, B, C>
// class: Derived
// jvm signature: Derived
// generic signature: <A:Ljava/lang/Object;B:Ljava/lang/Object;C:Ljava/lang/Object;>Ljava/lang/Object;LBase<TA;TB;TC;>;
@@ -0,0 +1,8 @@
trait Base<A, in B, out C>
trait Intermediate<A>
class Derived<A, B, C>: Intermediate<Base<A, B, C>>
// class: Derived
// jvm signature: Derived
// generic signature: <A:Ljava/lang/Object;B:Ljava/lang/Object;C:Ljava/lang/Object;>Ljava/lang/Object;LIntermediate<LBase<TA;-TB;+TC;>;>;