From 04d0779cfbed51d3912fb1aa2841110dfd223590 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Mon, 3 Sep 2012 17:13:42 +0400 Subject: [PATCH] lambda: infer from array initializer --- java/java-psi-api/src/com/intellij/psi/LambdaUtil.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/java/java-psi-api/src/com/intellij/psi/LambdaUtil.java b/java/java-psi-api/src/com/intellij/psi/LambdaUtil.java index f646cc237061..3a0572a0301f 100644 --- a/java/java-psi-api/src/com/intellij/psi/LambdaUtil.java +++ b/java/java-psi-api/src/com/intellij/psi/LambdaUtil.java @@ -334,7 +334,12 @@ public class LambdaUtil { while (parent instanceof PsiParenthesizedExpression) { parent = parent.getParent(); } - if (parent instanceof PsiTypeCastExpression) { + if (parent instanceof PsiArrayInitializerExpression) { + final PsiType psiType = ((PsiArrayInitializerExpression)parent).getType(); + if (psiType instanceof PsiArrayType) { + return ((PsiArrayType)psiType).getComponentType(); + } + } else if (parent instanceof PsiTypeCastExpression) { return ((PsiTypeCastExpression)parent).getType(); } else if (parent instanceof PsiVariable) {