A case for extending a raw Comparator

This commit is contained in:
Andrey Breslav
2012-12-04 17:10:26 +04:00
parent aef96e93cf
commit 932d29e2ef
4 changed files with 46 additions and 1 deletions
@@ -161,7 +161,14 @@ public class JavaTypeTransformer {
if (classType.isRaw()) {
List<TypeParameterDescriptor> parameters = classData.getTypeConstructor().getParameters();
for (TypeParameterDescriptor parameter : parameters) {
arguments.add(SubstitutionUtils.makeStarProjection(parameter));
TypeProjection starProjection = SubstitutionUtils.makeStarProjection(parameter);
if (howThisTypeIsUsed == SUPERTYPE) {
// projections are not allowed in immediate arguments of supertypes
arguments.add(new TypeProjection(starProjection.getType()));
}
else {
arguments.add(starProjection);
}
}
}
else {