mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
inspection "expression can be de-lambdified": false positives removed
This commit is contained in:
+4
-2
@@ -761,8 +761,10 @@
|
||||
<constraint name="s" nameOfExprType="java.lang.String" exprTypeWithinHierarchy="true" within="" contains="" />
|
||||
<constraint name="c" nameOfExprType="char" exprTypeWithinHierarchy="true" within="" contains="" />
|
||||
</replaceConfiguration>
|
||||
<replaceConfiguration name="Can be de-lambdified" text="()->$R$.run() " recursive="false" caseInsensitive="true" type="JAVA" reformatAccordingToStyle="true" shortenFQN="true" replacement="$R$ ">
|
||||
<constraint name="R" script=""R instanceof com.intellij.psi.PsiExpression && com.intellij.psi.util.InheritanceUtil.isInheritor(com.intellij.psi.util.PsiUtil.resolveClassInType(((com.intellij.psi.PsiExpression)R).getType()), "java.lang.Runnable")"" exprTypeWithinHierarchy="true" formalTypeWithinHierarchy="true" within="" contains="" />
|
||||
<replaceConfiguration name="Can be de-lambdified" text="()->$R$.$f$()" recursive="false" caseInsensitive="true" type="JAVA" reformatAccordingToStyle="true" shortenFQN="true" replacement="$R$ ">
|
||||
<constraint name="R" script=""import com.intellij.psi.* import com.intellij.psi.util.* import com.intellij.psi.impl.source.tree.java.PsiLambdaExpressionImpl; //System.out.println("R "+ R+"; pa "+R.getParent()+"; "+R.getParent().getParent().getParent()) if (!(R instanceof PsiExpression) || !(R.getParent().getParent().getParent() instanceof PsiLambdaExpressionImpl)) { return false; } PsiType type = ((PsiExpression)R).getType(); PsiLambdaExpressionImpl la = (PsiLambdaExpressionImpl) R.getParent().getParent().getParent(); if (type == null || !(la.getBody() instanceof PsiExpression) || la.getParameterList().getParametersCount() != 0) return false; PsiType targetType = la.getFunctionalInterfaceType(); if (targetType == null) return false; //System.out.println("type "+ type+"; tt "+targetType+"; "+type.isAssignableFrom(targetType)) return type.isAssignableFrom(targetType); "" exprTypeWithinHierarchy="true" formalTypeWithinHierarchy="true" within="" contains="" />
|
||||
<constraint name="__context__" target="true" within="" contains="" />
|
||||
<constraint name="f" within="" contains="" />
|
||||
</replaceConfiguration>
|
||||
</inspection_tool>
|
||||
<inspection_tool class="SafeVarargsDetector" enabled="false" level="WARNING" enabled_by_default="false" />
|
||||
|
||||
Reference in New Issue
Block a user