Name Suggester: Suggest parameter name for the corresponding argument expression

#KT-8111 Fixed
This commit is contained in:
Alexey Sedunov
2015-11-10 15:07:22 +03:00
parent f21603daf2
commit aeee8bafe6
20 changed files with 137 additions and 51 deletions
@@ -406,4 +406,16 @@ public fun KtDeclaration.visibilityModifier(): PsiElement? {
public fun KtDeclaration.visibilityModifierType(): KtModifierKeywordToken?
= visibilityModifier()?.node?.elementType as KtModifierKeywordToken?
public fun KtStringTemplateExpression.isPlain() = entries.all { it is KtLiteralStringTemplateEntry }
public fun KtStringTemplateExpression.isPlain() = entries.all { it is KtLiteralStringTemplateEntry }
public fun KtExpression.getOutermostParenthesizerOrThis(): KtExpression {
return (parentsWithSelf zip parents).firstOrNull {
val (element, parent) = it
when (parent) {
is KtParenthesizedExpression -> false
is KtAnnotatedExpression -> parent.baseExpression != element
is KtLabeledExpression -> parent.baseExpression != element
else -> true
}
}?.first as KtExpression? ?: this
}