Minor code simplification

This commit is contained in:
Valentin Kipyatkov
2015-05-22 11:52:29 +03:00
parent be9a3d10f6
commit 36f41c6d13
@@ -33,6 +33,7 @@ import org.jetbrains.kotlin.name.FqNameUnsafe
import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.*
import org.jetbrains.kotlin.psi.psiUtil.collectDescendantsOfType import org.jetbrains.kotlin.psi.psiUtil.collectDescendantsOfType
import org.jetbrains.kotlin.psi.psiUtil.forEachDescendantOfType
import org.jetbrains.kotlin.psi.psiUtil.getReceiverExpression import org.jetbrains.kotlin.psi.psiUtil.getReceiverExpression
import org.jetbrains.kotlin.psi.psiUtil.replaced import org.jetbrains.kotlin.psi.psiUtil.replaced
import org.jetbrains.kotlin.resolve.BindingContext import org.jetbrains.kotlin.resolve.BindingContext
@@ -99,9 +100,8 @@ object ReplaceWithAnnotationAnalyzer {
val parameterUsageKey = Key<ValueParameterDescriptor>("parameterUsageKey") val parameterUsageKey = Key<ValueParameterDescriptor>("parameterUsageKey")
expression.accept(object : JetVisitorVoid(){ expression.forEachDescendantOfType<JetSimpleNameExpression> { expression ->
override fun visitSimpleNameExpression(expression: JetSimpleNameExpression) { val target = bindingContext[BindingContext.REFERENCE_TARGET, expression] ?: return@forEachDescendantOfType
val target = bindingContext[BindingContext.REFERENCE_TARGET, expression] ?: return
if (target.canBeReferencedViaImport()) { if (target.canBeReferencedViaImport()) {
if (target.isExtension || expression.getReceiverExpression() == null) { if (target.isExtension || expression.getReceiverExpression() == null) {
@@ -130,11 +130,6 @@ object ReplaceWithAnnotationAnalyzer {
} }
} }
override fun visitJetElement(element: JetElement) {
element.acceptChildren(this)
}
})
for ((expr, receiverExpression) in receiversToAdd) { for ((expr, receiverExpression) in receiversToAdd) {
val expressionToReplace = expr.getParent() as? JetCallExpression ?: expr val expressionToReplace = expr.getParent() as? JetCallExpression ?: expr
val newExpr = expressionToReplace.replaced(psiFactory.createExpressionByPattern("$0.$1", receiverExpression, expressionToReplace)) val newExpr = expressionToReplace.replaced(psiFactory.createExpressionByPattern("$0.$1", receiverExpression, expressionToReplace))
@@ -147,11 +142,9 @@ object ReplaceWithAnnotationAnalyzer {
.map { parameter -> parameter to expression.collectDescendantsOfType<JetExpression> { it.getCopyableUserData(parameterUsageKey) == parameter } } .map { parameter -> parameter to expression.collectDescendantsOfType<JetExpression> { it.getCopyableUserData(parameterUsageKey) == parameter } }
.toMap() .toMap()
expression.accept(object : PsiRecursiveElementVisitor() { expression.forEachDescendantOfType<JetExpression> {
override fun visitElement(element: PsiElement) { it.putCopyableUserData(parameterUsageKey, null)
element.putCopyableUserData(parameterUsageKey, null)
} }
})
return ReplacementExpression(expression, importFqNames, parameterUsages) return ReplacementExpression(expression, importFqNames, parameterUsages)
} }