LookupElement[] (Expression @NotNull [] params, ExpressionContext context) { PsiType[] types = guessTypes(params, context); if (types == null || types.length < 2) return null; Set<LookupElement> set = new LinkedHashSet<>(); for (PsiType type : types) { JavaTemplateUtil.addTypeLookupItem(set, type); } return set.toArray(LookupElement.EMPTY_ARRAY); }