diff options
Diffstat (limited to 'java/java-psi-api/src/com/intellij/psi/LambdaHighlightingUtil.java')
-rw-r--r-- | java/java-psi-api/src/com/intellij/psi/LambdaHighlightingUtil.java | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/java/java-psi-api/src/com/intellij/psi/LambdaHighlightingUtil.java b/java/java-psi-api/src/com/intellij/psi/LambdaHighlightingUtil.java index 07cc842b7e05..fc1d2957c2da 100644 --- a/java/java-psi-api/src/com/intellij/psi/LambdaHighlightingUtil.java +++ b/java/java-psi-api/src/com/intellij/psi/LambdaHighlightingUtil.java @@ -28,9 +28,14 @@ import java.util.List; public class LambdaHighlightingUtil { @Nullable public static String checkInterfaceFunctional(@NotNull PsiClass psiClass) { + return checkInterfaceFunctional(psiClass, "Target type of a lambda conversion must be an interface"); + } + + @Nullable + public static String checkInterfaceFunctional(@NotNull PsiClass psiClass, String interfaceNonFunctionalMessage) { if (psiClass instanceof PsiTypeParameter) return null; //should be logged as cyclic inference final List<MethodSignature> signatures = LambdaUtil.findFunctionCandidates(psiClass); - if (signatures == null) return "Target type of a lambda conversion must be an interface"; + if (signatures == null) return interfaceNonFunctionalMessage; if (signatures.isEmpty()) return "No target method found"; if (signatures.size() == 1) { final MethodSignature functionalMethod = signatures.get(0); |