Move: Fix processing of calls and callable references

Fix CCE on callable references to Java methods.
Fix qualification of callable references without receivers.
Fix processing of calls/callable references to object extensions
and extension members.
Do not explicate short companion references

 #KT-16809 Fixed
This commit is contained in:
Alexey Sedunov
2017-03-22 16:08:47 +03:00
parent 58495555dc
commit 1d0162402e
52 changed files with 1577 additions and 42 deletions
@@ -66,6 +66,13 @@ fun KtSimpleNameExpression.getQualifiedElement(): KtElement {
}
}
fun KtSimpleNameExpression.getQualifiedElementOrCallableRef(): KtElement {
val parent = parent
if (parent is KtCallableReferenceExpression && parent.callableReference == this) return parent
return getQualifiedElement()
}
fun KtSimpleNameExpression.getTopmostParentQualifiedExpressionForSelector(): KtQualifiedExpression? {
return generateSequence<KtExpression>(this) {
val parentQualified = it.parent as? KtQualifiedExpression