[FIR] Introduce extension unwrapFakeOverridesOrDelegated()
This commit is contained in:
committed by
Space Team
parent
35dfcb61bb
commit
d20ad67aa9
+2
-13
@@ -7,16 +7,17 @@ package org.jetbrains.kotlin.fir.scopes.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.fir.DelegatedWrapperData
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.modality
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.visibility
|
||||
import org.jetbrains.kotlin.fir.delegatedWrapperData
|
||||
import org.jetbrains.kotlin.fir.resolve.ScopeSession
|
||||
import org.jetbrains.kotlin.fir.resolve.defaultType
|
||||
import org.jetbrains.kotlin.fir.resolve.scope
|
||||
import org.jetbrains.kotlin.fir.resolve.substitution.ConeSubstitutor
|
||||
import org.jetbrains.kotlin.fir.scopes.*
|
||||
import org.jetbrains.kotlin.fir.symbols.ConeClassLikeLookupTag
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.*
|
||||
import org.jetbrains.kotlin.fir.types.ConeClassLikeType
|
||||
import org.jetbrains.kotlin.fir.types.ConeFlexibleType
|
||||
@@ -206,18 +207,6 @@ var FirCallableDeclaration.multipleDelegatesWithTheSameSignature: Boolean? by Fi
|
||||
val FirCallableSymbol<*>.multipleDelegatesWithTheSameSignature: Boolean?
|
||||
get() = fir.multipleDelegatesWithTheSameSignature
|
||||
|
||||
private object DelegatedWrapperDataKey : FirDeclarationDataKey()
|
||||
class DelegatedWrapperData<D : FirCallableDeclaration>(
|
||||
val wrapped: D,
|
||||
val containingClass: ConeClassLikeLookupTag,
|
||||
val delegateField: FirField,
|
||||
)
|
||||
var <D : FirCallableDeclaration>
|
||||
D.delegatedWrapperData: DelegatedWrapperData<D>? by FirDeclarationDataRegistry.data(DelegatedWrapperDataKey)
|
||||
|
||||
val <D : FirCallableDeclaration> FirCallableSymbol<out D>.delegatedWrapperData: DelegatedWrapperData<D>?
|
||||
get() = fir.delegatedWrapperData
|
||||
|
||||
|
||||
// From the definition of function interfaces in the Java specification (pt. 9.8):
|
||||
// "methods that are members of I that do not have the same signature as any public instance method of the class Object"
|
||||
|
||||
Reference in New Issue
Block a user