Code completion: shorter presentation for member extensions
This commit is contained in:
@@ -97,9 +97,13 @@ public open class LookupElementFactory protected() {
|
|||||||
if (descriptor is CallableDescriptor) {
|
if (descriptor is CallableDescriptor) {
|
||||||
val receiver = descriptor.getExtensionReceiverParameter()
|
val receiver = descriptor.getExtensionReceiverParameter()
|
||||||
if (receiver != null) {
|
if (receiver != null) {
|
||||||
val tail = " for " + DescriptorRenderer.SHORT_NAMES_IN_TYPES.renderType(receiver.getType()) +
|
val container = descriptor.getContainingDeclaration()
|
||||||
" in " + DescriptorUtils.getFqName(descriptor.getContainingDeclaration())
|
val containerPresentation = if (container is ClassDescriptor)
|
||||||
element = element.appendTailText(tail, true)
|
DescriptorUtils.getFqNameFromTopLevelClass(container)
|
||||||
|
else
|
||||||
|
DescriptorUtils.getFqName(container)
|
||||||
|
val receiverPresentation = DescriptorRenderer.SHORT_NAMES_IN_TYPES.renderType(receiver.getType())
|
||||||
|
element = element.appendTailText(" for $receiverPresentation in $containerPresentation", true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,14 @@
|
|||||||
package a.b
|
package a.b
|
||||||
|
|
||||||
class Some {
|
class Some {
|
||||||
fun foo() {
|
class Nested {
|
||||||
"".<caret>
|
fun foo() {
|
||||||
|
"".<caret>
|
||||||
|
}
|
||||||
|
|
||||||
|
fun String.memberExtFun() { }
|
||||||
}
|
}
|
||||||
|
|
||||||
fun String.memberExtFun() { }
|
|
||||||
val String.memberExtProp: Int get() = 1
|
val String.memberExtProp: Int get() = 1
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -14,5 +17,5 @@ val String.extProp: Int get() = 1
|
|||||||
|
|
||||||
// EXIST: { lookupString: "extFun", itemText: "extFun", tailText: "() for String in a.b", typeText: "Unit" }
|
// EXIST: { lookupString: "extFun", itemText: "extFun", tailText: "() for String in a.b", typeText: "Unit" }
|
||||||
// EXIST: { lookupString: "extProp", itemText: "extProp", tailText: " for String in a.b", typeText: "Int" }
|
// EXIST: { lookupString: "extProp", itemText: "extProp", tailText: " for String in a.b", typeText: "Int" }
|
||||||
// EXIST: { lookupString: "memberExtFun", itemText: "memberExtFun", tailText: "() for String in a.b.Some", typeText: "Unit" }
|
// EXIST: { lookupString: "memberExtFun", itemText: "memberExtFun", tailText: "() for String in Some.Nested", typeText: "Unit" }
|
||||||
// EXIST: { lookupString: "memberExtProp", itemText: "memberExtProp", tailText: " for String in a.b.Some", typeText: "Int" }
|
// EXIST: { lookupString: "memberExtProp", itemText: "memberExtProp", tailText: " for String in Some", typeText: "Int" }
|
||||||
|
|||||||
Reference in New Issue
Block a user