Report warning on unused entities that can be renamed to _
Currently it's all about lambda parameters/destructuring entries #KT-14347 In Progress
This commit is contained in:
@@ -578,6 +578,7 @@ class ControlFlowInformationProvider private constructor(
|
||||
}
|
||||
else if (element is KtParameter) {
|
||||
val owner = element.parent?.parent
|
||||
if (element.isSingleUnderscore) return@traverse
|
||||
when (owner) {
|
||||
is KtPrimaryConstructor -> if (!element.hasValOrVar()) {
|
||||
val containingClass = owner.getContainingClassOrObject()
|
||||
@@ -590,7 +591,6 @@ class ControlFlowInformationProvider private constructor(
|
||||
is KtFunction -> {
|
||||
val mainFunctionDetector = MainFunctionDetector(trace.bindingContext)
|
||||
val isMain = owner is KtNamedFunction && mainFunctionDetector.isMain(owner)
|
||||
if (owner is KtFunctionLiteral) return@traverse
|
||||
val functionDescriptor =
|
||||
trace.get(BindingContext.DECLARATION_TO_DESCRIPTOR, owner) as? FunctionDescriptor
|
||||
?: throw AssertionError(owner.text)
|
||||
|
||||
@@ -42,7 +42,6 @@ import org.jetbrains.kotlin.parsing.KotlinExpressionParsing;
|
||||
import org.jetbrains.kotlin.psi.psiUtil.KtPsiUtilKt;
|
||||
import org.jetbrains.kotlin.resolve.StatementFilter;
|
||||
import org.jetbrains.kotlin.resolve.StatementFilterKt;
|
||||
import org.jetbrains.kotlin.types.expressions.OperatorConventions;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.HashSet;
|
||||
@@ -280,9 +279,8 @@ public class KtPsiUtil {
|
||||
if (!(declaration instanceof KtVariableDeclaration)) return false;
|
||||
if (declaration instanceof KtProperty) return true;
|
||||
assert declaration instanceof KtDestructuringDeclarationEntry;
|
||||
KtDestructuringDeclaration parentDeclaration = (KtDestructuringDeclaration) declaration.getParent();
|
||||
List<KtDestructuringDeclarationEntry> entries = parentDeclaration.getEntries();
|
||||
return entries.size() > 1 && entries.get(entries.size() - 1) == declaration;
|
||||
// We can always replace destructuring entry with _
|
||||
return true;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
|
||||
Reference in New Issue
Block a user