public static LookupItem createLookupItem(@NotNull PsiType type, @Nullable PsiElement context) { final PsiType original = type; int dim = 0; while (type instanceof PsiArrayType) { type = ((PsiArrayType) type).getComponentType(); dim++; } LookupItem item = doCreateItem(type, context); if (dim > 0) { final StringBuilder tail = new StringBuilder(); for (int i = 0; i < dim; i++) { tail.append("[]"); } item.setAttribute(TAIL_TEXT_ATTR, " " + tail.toString()); item.setAttribute(TAIL_TEXT_SMALL_ATTR, ""); item.putUserData(BRACKETS_COUNT_ATTR, dim); } item.setAttribute(TYPE, original); return item; }