RedundantSemicolonInspection: move isLineBreak to utils

This commit is contained in:
Dmitry Gridin
2020-01-22 18:35:42 +07:00
parent 9b64a1d18a
commit 3e722887ab
2 changed files with 7 additions and 8 deletions
@@ -13,6 +13,7 @@ import com.intellij.psi.PsiElement
import com.intellij.psi.PsiElementVisitor import com.intellij.psi.PsiElementVisitor
import com.intellij.psi.PsiWhiteSpace import com.intellij.psi.PsiWhiteSpace
import org.jetbrains.kotlin.KtNodeTypes import org.jetbrains.kotlin.KtNodeTypes
import org.jetbrains.kotlin.idea.util.isLineBreak
import org.jetbrains.kotlin.kdoc.psi.api.KDoc import org.jetbrains.kotlin.kdoc.psi.api.KDoc
import org.jetbrains.kotlin.lexer.KtModifierKeywordToken import org.jetbrains.kotlin.lexer.KtModifierKeywordToken
import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.lexer.KtTokens
@@ -108,8 +109,6 @@ class RedundantSemicolonInspection : AbstractKotlinInspection(), CleanupLocalIns
return true return true
} }
private fun PsiElement?.isLineBreak() = this is PsiWhiteSpace && textContains('\n')
private object Fix : LocalQuickFix { private object Fix : LocalQuickFix {
override fun getName() = "Remove redundant semicolon" override fun getName() = "Remove redundant semicolon"
override fun getFamilyName() = name override fun getFamilyName() = name
@@ -7,10 +7,8 @@ package org.jetbrains.kotlin.idea.util
import com.intellij.lang.jvm.JvmModifier import com.intellij.lang.jvm.JvmModifier
import com.intellij.openapi.util.TextRange import com.intellij.openapi.util.TextRange
import com.intellij.psi.PsiComment import com.intellij.openapi.util.text.StringUtil
import com.intellij.psi.PsiElement import com.intellij.psi.*
import com.intellij.psi.PsiMember
import com.intellij.psi.PsiMethod
import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.caches.resolve.analyze
import org.jetbrains.kotlin.idea.intentions.callExpression import org.jetbrains.kotlin.idea.intentions.callExpression
import org.jetbrains.kotlin.idea.references.mainReference import org.jetbrains.kotlin.idea.references.mainReference
@@ -25,7 +23,7 @@ fun KtCallExpression.replaceOrCreateTypeArgumentList(newTypeArgumentList: KtType
if (typeArgumentList != null) typeArgumentList?.replace(newTypeArgumentList) if (typeArgumentList != null) typeArgumentList?.replace(newTypeArgumentList)
else addAfter( else addAfter(
newTypeArgumentList, newTypeArgumentList,
calleeExpression calleeExpression,
) )
} }
@@ -59,4 +57,6 @@ fun KtDotQualifiedExpression.hasNotReceiver(): Boolean {
element is KtCallableDeclaration && element.receiverTypeReference == null && (element.containingClassOrObject is KtObjectDeclaration?) || element is KtCallableDeclaration && element.receiverTypeReference == null && (element.containingClassOrObject is KtObjectDeclaration?) ||
element is PsiMember && element.hasModifier(JvmModifier.STATIC) || element is PsiMember && element.hasModifier(JvmModifier.STATIC) ||
element is PsiMethod && element.isConstructor element is PsiMethod && element.isConstructor
} }
fun PsiElement?.isLineBreak() = this is PsiWhiteSpace && StringUtil.containsLineBreak(text)