From 735b883fd993076fd33f8f91b48547e62157ff1b Mon Sep 17 00:00:00 2001 From: Dmitry Batkovich Date: Thu, 3 Mar 2016 13:07:45 +0300 Subject: [PATCH] guava type migration: add type cast to method reference IDEA-152409 --- .../rules/guava/GuavaConversionUtil.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/java/typeMigration/src/com/intellij/refactoring/typeMigration/rules/guava/GuavaConversionUtil.java b/java/typeMigration/src/com/intellij/refactoring/typeMigration/rules/guava/GuavaConversionUtil.java index cb714ba10b9f..608ba2b4b46f 100644 --- a/java/typeMigration/src/com/intellij/refactoring/typeMigration/rules/guava/GuavaConversionUtil.java +++ b/java/typeMigration/src/com/intellij/refactoring/typeMigration/rules/guava/GuavaConversionUtil.java @@ -98,8 +98,17 @@ public class GuavaConversionUtil { } else { final GuavaLambda lambda = GuavaLambda.findFor(evaluator.evaluateType(expression)); - return lambda == null ? expression - : addMethodReference(expression, lambda); + if (lambda == null) { + return expression; + } + else { + final PsiExpression expressionWithMethodReference = addMethodReference(expression, lambda); + if (insertTypeCase) { + return adjustLambdaContainingExpression(expressionWithMethodReference, true, targetType, evaluator); + } else { + return expressionWithMethodReference; + } + } } } if (expression instanceof PsiMethodReferenceExpression) {