void (@NotNull PsiMethod method) { final PsiType returnType = method.getReturnType(); if (returnType == null) { return; } else if (!returnType.equals(PsiTypes.booleanType())) { if (ignoreBooleanMethods || !returnType.equalsToText(CommonClassNames.JAVA_LANG_BOOLEAN)) { return; } } if (ignoreInAnnotationInterface) { final PsiClass containingClass = method.getContainingClass(); if (containingClass != null && containingClass.isAnnotationType()) { return; } } final String name = method.getName(); if (startsWithQuestionWord(name) || isSpecialCase(name)) { return; } if (onlyWarnOnBaseMethods) { if (MethodUtils.hasSuper(method)) { return; } } else if (LibraryUtil.isOverrideOfLibraryMethod(method)) { return; } registerMethodError(method, method); }