ParameterTableModelItemBase<ParameterInfoImpl> (@Nullable ParameterInfoImpl parameterInfo) { if (parameterInfo == null) { parameterInfo = ParameterInfoImpl.createNew(); } JavaCodeFragmentFactory f = JavaCodeFragmentFactory.getInstance(myProject); final PsiTypeCodeFragment paramTypeCodeFragment = f.createTypeCodeFragment(parameterInfo.getTypeText(), myTypeContext, true, JavaCodeFragmentFactory.ALLOW_ELLIPSIS); final CanonicalTypes.Type paramType = parameterInfo.getTypeWrapper(); if (paramType != null) { paramType.addImportsTo(paramTypeCodeFragment); } String value = parameterInfo.getDefaultValue(); PsiExpressionCodeFragment defaultValueCodeFragment = f.createExpressionCodeFragment(ObjectUtils.notNull(value, ""), myDefaultValueContext, null, true); defaultValueCodeFragment.setVisibilityChecker(JavaCodeFragment.VisibilityChecker.EVERYTHING_VISIBLE); return new ParameterTableModelItemBase<>(parameterInfo, paramTypeCodeFragment, defaultValueCodeFragment) { @Override public boolean isEllipsisType() { try { return paramTypeCodeFragment.getType() instanceof PsiEllipsisType; } catch (PsiTypeCodeFragment.TypeSyntaxException | PsiTypeCodeFragment.NoTypeException e) { return false; } } }; }