change class signature from usage: expect e.g. array/wildcards types in type elements (EA-50283 - CCE: ChangeClassSignatureFromUsageFix.createTypeParameters)

This commit is contained in:
Anna Kozlova
2015-03-25 16:50:47 +01:00
parent 67e8f1844a
commit 56a0c4b1a4
@@ -103,8 +103,10 @@ public class ChangeClassSignatureFromUsageFix extends BaseIntentionAction {
}
}
final PsiClassType type = (PsiClassType)typeElement.getType();
result.put(new TypeParameterInfo(suggester.suggest(type), type), factory.createTypeCodeFragment(type.getClassName(), typeElement, true));
final PsiType type = typeElement.getType();
final String suggestedName = type instanceof PsiClassType ? suggester.suggest((PsiClassType)type) : suggester.suggestUnusedName("T");
result.put(new TypeParameterInfo(suggestedName, type),
factory.createTypeCodeFragment(suggestedName, typeElement, true));
}
return result;
}