boolean (InsertionContext context, LookupElement delegate) { if (!(delegate instanceof PsiTypeLookupItem) || isRawTypeExpected(context, (PsiTypeLookupItem)delegate) || !((PsiClass)delegate.getObject()).hasTypeParameters()) { return false; } PsiElement position = context.getFile().findElementAt(context.getStartOffset()); return position != null && ((PsiTypeLookupItem)delegate).calcGenerics(position, context).isEmpty() && context.getCompletionChar() != '('; }