void (int indentLevel, @NotNull StringBuilder buffer) { PsiClassType @NotNull [] types = getStub().getReferencedTypes(); if (types.length != 0) { Role role = getRole(); switch (role) { case EXTENDS_BOUNDS_LIST: buffer.append(' ').append(PsiKeyword.EXTENDS).append(' '); break; case EXTENDS_LIST: buffer.append(PsiKeyword.EXTENDS).append(' '); break; case IMPLEMENTS_LIST: buffer.append(PsiKeyword.IMPLEMENTS).append(' '); break; case PERMITS_LIST: buffer.append(PsiKeyword.PERMITS).append(' '); break; case THROWS_LIST: buffer.append(PsiKeyword.THROWS).append(' '); break; case PROVIDES_WITH_LIST: buffer.append(PsiKeyword.WITH).append(' '); break; } for (int i = 0; i < types.length; i++) { if (i > 0) buffer.append(role == Role.EXTENDS_BOUNDS_LIST ? " & " : ", "); buffer.append(types[i].getCanonicalText(true)); } } }