Skip to content

Commit aa989c0

Browse files
committed
Improve simple expressions detection for local variable deletion
1 parent a4253df commit aa989c0

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/main/kotlin/io/runescript/plugin/ide/inspections/fixes/RsDeleteLocalVariableFix.kt

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,19 @@ class RsDeleteLocalVariableFix : LocalQuickFix {
2424
}
2525

2626
private fun RsExpression.isSimpleToRemove(): Boolean {
27+
if (this is RsStringLiteralExpression) {
28+
return stringLiteralContent.stringInterpolationExpressionList.all { it.isSimpleToRemove() }
29+
}
2730
return when (this) {
2831
is RsNullLiteralExpression,
2932
is RsIntegerLiteralExpression,
3033
is RsCoordLiteralExpression,
3134
is RsBooleanLiteralExpression,
32-
is RsLongLiteralExpression -> true
33-
35+
is RsLongLiteralExpression,
36+
is RsLocalVariableExpression,
37+
is RsConstantExpression,
38+
is RsArrayAccessExpression -> true
39+
is RsStringInterpolationExpression -> expression.isSimpleToRemove()
3440
is RsParExpression -> expression.isSimpleToRemove()
3541
is RsCalcExpression -> expression.isSimpleToRemove()
3642
is RsBinaryExpression -> left.isSimpleToRemove() && right.isSimpleToRemove()

0 commit comments

Comments
 (0)