private void fillAllArgs(Consumer<? super LookupElement> resultSet,
                           PsiElement context,
                           ExpectedTypeInfo info,
                           List<? extends PsiType> expectedArgs,
                           PsiTypeParameterListOwner paramOwner) {
    List<PsiTypeLookupItem> typeItems = ContainerUtil.map(expectedArgs, arg -> PsiTypeLookupItem.createLookupItem(arg, context));
    TailType globalTail = mySmart ? info.getTailType() : TailTypes.noneType();
    TypeArgsLookupElement element = new TypeArgsLookupElement(typeItems, globalTail, hasParameters(paramOwner, context));
    element.registerSingleClass(mySession);
    resultSet.consume(element);
  }
private void fillAllArgs(Consumer<? super LookupElement> resultSet,
                           PsiElement context,
                           ExpectedTypeInfo info,
                           List<? extends PsiType> expectedArgs,
                           PsiTypeParameterListOwner paramOwner)