Single-expression string template is inspection for strings and intention otherwise #KT-13113 Fixed

(cherry picked from commit 266f9d0)
This commit is contained in:
Mikhail Glukhikh
2016-08-02 12:41:43 +03:00
committed by Mikhail Glukhikh
parent 9b8c55d823
commit d868410093
5 changed files with 31 additions and 2 deletions
@@ -30,9 +30,15 @@ private fun KtStringTemplateExpression.singleExpressionOrNull() =
children.singleOrNull()?.children?.firstOrNull() as? KtExpression
class RemoveSingleExpressionStringTemplateInspection : IntentionBasedInspection<KtStringTemplateExpression>(
RemoveSingleExpressionStringTemplateIntention()
RemoveSingleExpressionStringTemplateIntention(),
additionalChecker = {
templateExpression ->
templateExpression.singleExpressionOrNull()?.let {
KotlinBuiltIns.isString(it.getType(it.analyze()))
} ?: false
}
) {
override val problemText = "Single-expression string template"
override val problemText = "Redundant string template"
}
class RemoveSingleExpressionStringTemplateIntention : SelfTargetingOffsetIndependentIntention<KtStringTemplateExpression>(