mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
replace method reference with lambda: default constructor processing (IDEA-93025)
This commit is contained in:
+2
@@ -87,6 +87,8 @@ public class ReplaceMethodRefWithLambdaIntention extends Intention {
|
||||
final PsiClass containingClass = ((PsiMember)resolveElement).getContainingClass();
|
||||
LOG.assertTrue(containingClass != null);
|
||||
isReceiver = LambdaUtil.isReceiverType(functionalInterfaceType, containingClass, (PsiMethod)resolveElement);
|
||||
} else if (resolveElement instanceof PsiClass) {
|
||||
isReceiver = LambdaUtil.isReceiverType(functionalInterfaceType, (PsiClass)resolveElement, (PsiMethod)null);
|
||||
}
|
||||
|
||||
final PsiElement referenceNameElement = referenceExpression.getReferenceNameElement();
|
||||
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
class Test1 {
|
||||
class Inner {}
|
||||
void test() {
|
||||
BlahBlah6 blahBlah62 = Inner:<caret>:new;
|
||||
}
|
||||
}
|
||||
|
||||
interface BlahBlah6 {
|
||||
Test1.Inner foo6(Test1 p);
|
||||
}
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
class Test1 {
|
||||
class Inner {}
|
||||
void test() {
|
||||
BlahBlah6 blahBlah62 = (p) -> p.new Inner();
|
||||
}
|
||||
}
|
||||
|
||||
interface BlahBlah6 {
|
||||
Test1.Inner foo6(Test1 p);
|
||||
}
|
||||
+4
@@ -85,4 +85,8 @@ public class ReplaceMethodReferenceWithLambdaIntentionTest extends IPPTestCase {
|
||||
public void testTypeElementOnTheLeft() throws Exception {
|
||||
doTest();
|
||||
}
|
||||
|
||||
public void testNewDefaultConstructor() throws Exception {
|
||||
doTest();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user