[FIR IDE] Add unwrapping substitution overrides which doesn't affect function's signature
Also, do not use PSI to restore SUBSTITUTION_OVERRIDE function/property symbols
This commit is contained in:
committed by
teamcityserver
parent
2766dc938b
commit
fa8bb47bdf
Vendored
+14
@@ -0,0 +1,14 @@
|
||||
// DO_NOT_CHECK_SYMBOL_RESTORE
|
||||
package test
|
||||
|
||||
class SomeClass
|
||||
|
||||
fun <Outer> topLevel() {
|
||||
open class Base {
|
||||
fun withOuter(): Outer? = null
|
||||
}
|
||||
|
||||
class Child : Base() {}
|
||||
|
||||
Child().<caret>withOuter()
|
||||
}
|
||||
Vendored
+23
@@ -0,0 +1,23 @@
|
||||
KtFunctionSymbol:
|
||||
annotationsList: []
|
||||
callableIdIfNonLocal: null
|
||||
hasStableParameterNames: true
|
||||
isExtension: false
|
||||
isExternal: false
|
||||
isInfix: false
|
||||
isInline: false
|
||||
isOperator: false
|
||||
isOverride: false
|
||||
isStatic: false
|
||||
isSuspend: false
|
||||
modality: FINAL
|
||||
name: withOuter
|
||||
origin: SOURCE
|
||||
receiverType: null
|
||||
returnType: Outer?
|
||||
symbolKind: CLASS_MEMBER
|
||||
typeParameters: []
|
||||
valueParameters: []
|
||||
visibility: Public
|
||||
getDispatchReceiver(): test/Base<Outer>
|
||||
deprecationStatus: null
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
KtFunctionSymbol:
|
||||
annotationsList: []
|
||||
callableIdIfNonLocal: test/TopLevel.Child.withOuter
|
||||
hasStableParameterNames: true
|
||||
isExtension: false
|
||||
isExternal: false
|
||||
isInfix: false
|
||||
isInline: false
|
||||
isOperator: false
|
||||
isOverride: false
|
||||
isStatic: false
|
||||
isSuspend: false
|
||||
modality: FINAL
|
||||
name: withOuter
|
||||
origin: SOURCE
|
||||
receiverType: null
|
||||
returnType: Outer?
|
||||
symbolKind: CLASS_MEMBER
|
||||
typeParameters: []
|
||||
valueParameters: []
|
||||
visibility: Public
|
||||
getDispatchReceiver(): test/TopLevel<Outer>.test/TopLevel.Base<test/SomeClass>
|
||||
deprecationStatus: null
|
||||
Vendored
+16
@@ -0,0 +1,16 @@
|
||||
// DO_NOT_CHECK_SYMBOL_RESTORE
|
||||
package test
|
||||
|
||||
class SomeClass
|
||||
|
||||
class TopLevel<Outer> {
|
||||
inner open class Base<T> {
|
||||
fun withOuter(): Outer? = null
|
||||
}
|
||||
|
||||
inner class Child : Base<SomeClass> {}
|
||||
|
||||
fun usage() {
|
||||
Child().<caret>withOuter()
|
||||
}
|
||||
}
|
||||
Vendored
+23
@@ -0,0 +1,23 @@
|
||||
KtFunctionSymbol:
|
||||
annotationsList: []
|
||||
callableIdIfNonLocal: test/TopLevel.Base.withOuter
|
||||
hasStableParameterNames: true
|
||||
isExtension: false
|
||||
isExternal: false
|
||||
isInfix: false
|
||||
isInline: false
|
||||
isOperator: false
|
||||
isOverride: false
|
||||
isStatic: false
|
||||
isSuspend: false
|
||||
modality: FINAL
|
||||
name: withOuter
|
||||
origin: SOURCE
|
||||
receiverType: null
|
||||
returnType: Outer?
|
||||
symbolKind: CLASS_MEMBER
|
||||
typeParameters: []
|
||||
valueParameters: []
|
||||
visibility: Public
|
||||
getDispatchReceiver(): test/TopLevel.Base<T, Outer>
|
||||
deprecationStatus: null
|
||||
Reference in New Issue
Block a user