boolean (@NotNull PsiClass psiClass, @NotNull Collection<PsiField> params, @NotNull ProblemSink builder) { boolean result = true; final List<PsiType> paramTypes = ContainerUtil.map(params, PsiField::getType); final Collection<PsiMethod> definedConstructors = PsiClassUtil.collectClassConstructorIntern(psiClass); final String constructorName = getConstructorName(psiClass); final PsiMethod existedMethod = findExistedMethod(definedConstructors, constructorName, paramTypes); if (null != existedMethod) { if (paramTypes.isEmpty()) { builder.addErrorMessage("inspection.message.constructor.without.parameters.already.defined") .withLocalQuickFixes(() -> new SafeDeleteFix(existedMethod)); } else { builder.addErrorMessage("inspection.message.constructor.with.d.parameters.already.defined", paramTypes.size()) .withLocalQuickFixes(() -> new SafeDeleteFix(existedMethod)); } result = false; } return result; }