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) {
|
||||
val receiver = descriptor.getExtensionReceiverParameter()
|
||||
if (receiver != null) {
|
||||
val tail = " for " + DescriptorRenderer.SHORT_NAMES_IN_TYPES.renderType(receiver.getType()) +
|
||||
" in " + DescriptorUtils.getFqName(descriptor.getContainingDeclaration())
|
||||
element = element.appendTailText(tail, true)
|
||||
val container = descriptor.getContainingDeclaration()
|
||||
val containerPresentation = if (container is ClassDescriptor)
|
||||
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
|
||||
|
||||
class Some {
|
||||
fun foo() {
|
||||
"".<caret>
|
||||
class Nested {
|
||||
fun foo() {
|
||||
"".<caret>
|
||||
}
|
||||
|
||||
fun String.memberExtFun() { }
|
||||
}
|
||||
|
||||
fun String.memberExtFun() { }
|
||||
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: "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: "memberExtProp", itemText: "memberExtProp", tailText: " for String in a.b.Some", typeText: "Int" }
|
||||
// EXIST: { lookupString: "memberExtFun", itemText: "memberExtFun", tailText: "() for String in Some.Nested", typeText: "Unit" }
|
||||
// EXIST: { lookupString: "memberExtProp", itemText: "memberExtProp", tailText: " for String in Some", typeText: "Int" }
|
||||
|
||||
Reference in New Issue
Block a user