LL API: remove unused resolve api
This commit is contained in:
+1
-1
@@ -66,7 +66,7 @@ internal class KtFirExpressionTypeProvider(
|
||||
}
|
||||
}
|
||||
is FirExpression -> fir.typeRef.coneType.asKtType()
|
||||
is FirNamedReference -> fir.getReferencedElementType(firResolveState).asKtType()
|
||||
is FirNamedReference -> fir.getReferencedElementType().asKtType()
|
||||
is FirStatement -> with(analysisSession) { builtinTypes.UNIT }
|
||||
is FirTypeRef, is FirImport, is FirPackageDirective, is FirLabel -> null
|
||||
// For invalid code like the following,
|
||||
|
||||
+2
-5
@@ -13,7 +13,6 @@ import org.jetbrains.kotlin.analysis.api.fir.getCandidateSymbols
|
||||
import org.jetbrains.kotlin.analysis.api.types.KtTypeNullability
|
||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.api.FirModuleResolveState
|
||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.api.withFirDeclaration
|
||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.lazy.resolve.ResolveType
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.classKind
|
||||
@@ -52,7 +51,7 @@ internal fun KtExpression.unwrap(): KtExpression {
|
||||
} ?: this
|
||||
}
|
||||
|
||||
internal fun FirNamedReference.getReferencedElementType(resolveState: FirModuleResolveState): ConeKotlinType {
|
||||
internal fun FirNamedReference.getReferencedElementType(): ConeKotlinType {
|
||||
val symbols = when (this) {
|
||||
is FirResolvedNamedReference -> listOf(resolvedSymbol)
|
||||
is FirErrorNamedReference -> getCandidateSymbols()
|
||||
@@ -61,9 +60,7 @@ internal fun FirNamedReference.getReferencedElementType(resolveState: FirModuleR
|
||||
val firCallableDeclaration = symbols.singleOrNull()?.fir as? FirCallableDeclaration
|
||||
?: return ConeClassErrorType(ConeUnresolvedNameError(name))
|
||||
|
||||
return firCallableDeclaration.withFirDeclaration(ResolveType.CallableReturnType, resolveState) {
|
||||
it.returnTypeRef.coneType
|
||||
}
|
||||
return firCallableDeclaration.symbol.resolvedReturnType
|
||||
}
|
||||
|
||||
internal fun KtTypeNullability.toConeNullability() = when (this) {
|
||||
|
||||
+1
-4
@@ -8,7 +8,6 @@ package org.jetbrains.kotlin.analysis.low.level.api.fir.api
|
||||
import com.intellij.openapi.project.Project
|
||||
import org.jetbrains.kotlin.analysis.api.impl.barebone.annotations.InternalForInline
|
||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.file.builder.ModuleFileCache
|
||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.lazy.resolve.ResolveType
|
||||
import org.jetbrains.kotlin.analysis.project.structure.KtModule
|
||||
import org.jetbrains.kotlin.diagnostics.KtPsiDiagnostic
|
||||
import org.jetbrains.kotlin.fir.FirElement
|
||||
@@ -72,7 +71,5 @@ abstract class FirModuleResolveState {
|
||||
): FirDeclaration
|
||||
|
||||
|
||||
internal abstract fun <D : FirDeclaration> resolveFirToPhase(declaration: D, toPhase: FirResolvePhase): D
|
||||
|
||||
internal abstract fun <D : FirDeclaration> resolveFirToResolveType(declaration: D, type: ResolveType): D
|
||||
internal abstract fun resolveFirToPhase(declaration: FirDeclaration, toPhase: FirResolvePhase)
|
||||
}
|
||||
|
||||
+8
-51
@@ -8,12 +8,11 @@ package org.jetbrains.kotlin.analysis.low.level.api.fir.api
|
||||
import com.intellij.openapi.project.Project
|
||||
import org.jetbrains.kotlin.analysis.api.impl.barebone.annotations.InternalForInline
|
||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.FirIdeResolveStateService
|
||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.lazy.resolve.ResolveType
|
||||
import org.jetbrains.kotlin.analysis.project.structure.KtModule
|
||||
import org.jetbrains.kotlin.analysis.project.structure.KtSourceModule
|
||||
import org.jetbrains.kotlin.analysis.project.structure.getKtModule
|
||||
import org.jetbrains.kotlin.fir.FirElement
|
||||
import org.jetbrains.kotlin.diagnostics.KtPsiDiagnostic
|
||||
import org.jetbrains.kotlin.fir.FirElement
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.symbols.FirBasedSymbol
|
||||
import org.jetbrains.kotlin.psi.KtDeclaration
|
||||
@@ -55,31 +54,11 @@ inline fun <R> KtDeclaration.withFirSymbol(
|
||||
resolveState.findSourceFirDeclaration(this)
|
||||
}
|
||||
|
||||
val resolvedDeclaration = if (firDeclaration.resolvePhase < phase) {
|
||||
if (firDeclaration.resolvePhase < phase) {
|
||||
firDeclaration.resolvedFirToPhase(phase, resolveState)
|
||||
} else {
|
||||
firDeclaration
|
||||
}
|
||||
|
||||
return action(resolvedDeclaration.symbol)
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates [FirDeclaration] by [KtDeclaration] and executes an [action] on it
|
||||
* [FirDeclaration] passed to [action] will be resolved at least to [resolveType] when executing [action] on it
|
||||
*
|
||||
* [FirDeclaration] passed to [action] should not be leaked outside [action] lambda
|
||||
* Otherwise, some threading problems may arise,
|
||||
*/
|
||||
@OptIn(InternalForInline::class)
|
||||
inline fun <R> KtDeclaration.withFirSymbolDeclaration(
|
||||
resolveState: FirModuleResolveState,
|
||||
resolveType: ResolveType = ResolveType.NoResolve,
|
||||
action: (FirBasedSymbol<*>) -> R
|
||||
): R {
|
||||
val firDeclaration = resolveState.findSourceFirDeclaration(this)
|
||||
val resolvedDeclaration = firDeclaration.resolvedFirToType(resolveType, resolveState)
|
||||
return action(resolvedDeclaration.symbol)
|
||||
return action(firDeclaration.symbol)
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -128,22 +107,10 @@ fun <D : FirDeclaration, R> D.withFirDeclaration(
|
||||
phase: FirResolvePhase = FirResolvePhase.RAW_FIR,
|
||||
action: (D) -> R,
|
||||
): R {
|
||||
val resolvedDeclaration = resolvedFirToPhase(phase, resolveState)
|
||||
return action(resolvedDeclaration)
|
||||
resolvedFirToPhase(phase, resolveState)
|
||||
return action(this)
|
||||
}
|
||||
|
||||
/**
|
||||
* Executes [action] with given [FirDeclaration] under read action, so resolve **is not possible** inside [action]
|
||||
* [FirDeclaration] passed to [action] will be resolved at least to [phase] when executing [action] on it
|
||||
*/
|
||||
fun <D : FirDeclaration, R> D.withFirDeclaration(
|
||||
type: ResolveType,
|
||||
resolveState: FirModuleResolveState,
|
||||
action: (D) -> R,
|
||||
): R {
|
||||
val resolvedDeclaration = resolvedFirToType(type, resolveState)
|
||||
return action(resolvedDeclaration)
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a list of Diagnostics compiler finds for given [KtElement]
|
||||
@@ -167,22 +134,12 @@ fun KtFile.collectDiagnosticsForFile(
|
||||
*
|
||||
* Should not be called form [withFirSymbol], [withFirDeclarationOfType] functions, as it it may cause deadlock
|
||||
*/
|
||||
fun <D : FirDeclaration> D.resolvedFirToPhase(
|
||||
fun FirDeclaration.resolvedFirToPhase(
|
||||
phase: FirResolvePhase,
|
||||
resolveState: FirModuleResolveState
|
||||
): D =
|
||||
) {
|
||||
resolveState.resolveFirToPhase(this, phase)
|
||||
|
||||
/**
|
||||
* Resolves a given [FirDeclaration] to [phase] and returns resolved declaration
|
||||
*
|
||||
* Should not be called form [withFirSymbol], [withFirDeclarationOfType] functions, as it it may cause deadlock
|
||||
*/
|
||||
fun <D : FirDeclaration> D.resolvedFirToType(
|
||||
type: ResolveType,
|
||||
resolveState: FirModuleResolveState
|
||||
): D =
|
||||
resolveState.resolveFirToResolveType(this, type)
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
|
||||
-151
@@ -1,151 +0,0 @@
|
||||
/*
|
||||
* Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.analysis.low.level.api.fir.lazy.resolve
|
||||
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.resolve.ScopeSession
|
||||
import org.jetbrains.kotlin.fir.types.FirResolvedTypeRef
|
||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.file.builder.ModuleFileCache
|
||||
|
||||
enum class ResolveType {
|
||||
NoResolve,
|
||||
BodyResolveWithChildren,
|
||||
CallableBodyResolve,
|
||||
CallableReturnType,
|
||||
AnnotationType,
|
||||
AnnotationsArguments,
|
||||
ClassSuperTypes,
|
||||
CallableContracts,
|
||||
DeclarationStatus,
|
||||
ValueParametersTypes,
|
||||
TypeParametersTypes,
|
||||
// ResolveForMemberScope,
|
||||
// ResolveForSuperMembers,
|
||||
}
|
||||
|
||||
internal fun <D : FirDeclaration> FirLazyDeclarationResolver.lazyResolveDeclaration(
|
||||
firDeclaration: D,
|
||||
moduleFileCache: ModuleFileCache,
|
||||
toResolveType: ResolveType,
|
||||
scopeSession: ScopeSession,
|
||||
checkPCE: Boolean = false,
|
||||
): D {
|
||||
return when (toResolveType) {
|
||||
ResolveType.NoResolve -> return firDeclaration
|
||||
ResolveType.CallableReturnType -> {
|
||||
require(firDeclaration is FirCallableDeclaration) {
|
||||
"CallableReturnType type cannot be applied to ${firDeclaration::class.qualifiedName}"
|
||||
}
|
||||
var currentDeclaration = firDeclaration as FirCallableDeclaration
|
||||
if (currentDeclaration.resolvePhase < FirResolvePhase.TYPES) {
|
||||
if (currentDeclaration.returnTypeRef !is FirResolvedTypeRef) {
|
||||
currentDeclaration = lazyResolveDeclaration(
|
||||
firDeclarationToResolve = currentDeclaration,
|
||||
moduleFileCache = moduleFileCache,
|
||||
toPhase = FirResolvePhase.TYPES,
|
||||
scopeSession = scopeSession,
|
||||
checkPCE = checkPCE,
|
||||
)
|
||||
}
|
||||
}
|
||||
if (currentDeclaration.returnTypeRef !is FirResolvedTypeRef) {
|
||||
currentDeclaration = lazyResolveDeclaration(
|
||||
firDeclarationToResolve = currentDeclaration,
|
||||
moduleFileCache = moduleFileCache,
|
||||
toPhase = FirResolvePhase.IMPLICIT_TYPES_BODY_RESOLVE,
|
||||
scopeSession = scopeSession,
|
||||
checkPCE = checkPCE,
|
||||
)
|
||||
}
|
||||
|
||||
check(currentDeclaration.returnTypeRef is FirResolvedTypeRef)
|
||||
@Suppress("UNCHECKED_CAST")
|
||||
currentDeclaration as D
|
||||
}
|
||||
ResolveType.BodyResolveWithChildren, ResolveType.CallableBodyResolve -> {
|
||||
require(firDeclaration is FirCallableDeclaration || toResolveType != ResolveType.CallableBodyResolve) {
|
||||
"BodyResolveWithChildren and CallableBodyResolve types cannot be applied to ${firDeclaration::class.qualifiedName}"
|
||||
}
|
||||
lazyResolveDeclaration(
|
||||
firDeclarationToResolve = firDeclaration,
|
||||
moduleFileCache = moduleFileCache,
|
||||
toPhase = FirResolvePhase.BODY_RESOLVE,
|
||||
scopeSession = scopeSession,
|
||||
checkPCE = checkPCE,
|
||||
)
|
||||
}
|
||||
ResolveType.AnnotationType, ResolveType.AnnotationsArguments -> {
|
||||
if (firDeclaration is FirFile) {
|
||||
resolveFileAnnotations(
|
||||
firFile = firDeclaration,
|
||||
annotations = firDeclaration.annotations,
|
||||
moduleFileCache = moduleFileCache,
|
||||
scopeSession = scopeSession,
|
||||
checkPCE = checkPCE
|
||||
)
|
||||
firDeclaration
|
||||
} else {
|
||||
val toPhase =
|
||||
if (toResolveType == ResolveType.AnnotationType) FirResolvePhase.TYPES else FirResolvePhase.ARGUMENTS_OF_ANNOTATIONS
|
||||
lazyResolveDeclaration(
|
||||
firDeclarationToResolve = firDeclaration,
|
||||
moduleFileCache = moduleFileCache,
|
||||
toPhase = toPhase,
|
||||
scopeSession = scopeSession,
|
||||
checkPCE = checkPCE,
|
||||
)
|
||||
}
|
||||
}
|
||||
ResolveType.ClassSuperTypes -> {
|
||||
require(firDeclaration is FirClassLikeDeclaration) {
|
||||
"ClassSuperTypes type cannot be applied to ${firDeclaration::class.qualifiedName}"
|
||||
}
|
||||
lazyResolveDeclaration(
|
||||
firDeclarationToResolve = firDeclaration,
|
||||
moduleFileCache = moduleFileCache,
|
||||
toPhase = FirResolvePhase.SUPER_TYPES,
|
||||
scopeSession = scopeSession,
|
||||
checkPCE = checkPCE,
|
||||
)
|
||||
}
|
||||
ResolveType.CallableContracts -> {
|
||||
require(firDeclaration is FirCallableDeclaration) {
|
||||
"CallableContracts type cannot be applied to ${firDeclaration::class.qualifiedName}"
|
||||
}
|
||||
lazyResolveDeclaration(
|
||||
firDeclarationToResolve = firDeclaration,
|
||||
moduleFileCache = moduleFileCache,
|
||||
toPhase = FirResolvePhase.CONTRACTS,
|
||||
scopeSession = scopeSession,
|
||||
checkPCE = checkPCE,
|
||||
)
|
||||
}
|
||||
ResolveType.DeclarationStatus -> {
|
||||
require(firDeclaration !is FirFile) {
|
||||
"DeclarationStatus type cannot be applied to ${firDeclaration::class.qualifiedName}"
|
||||
}
|
||||
lazyResolveDeclaration(
|
||||
firDeclarationToResolve = firDeclaration,
|
||||
moduleFileCache = moduleFileCache,
|
||||
toPhase = FirResolvePhase.STATUS,
|
||||
scopeSession = scopeSession,
|
||||
checkPCE = checkPCE,
|
||||
)
|
||||
}
|
||||
ResolveType.ValueParametersTypes, ResolveType.TypeParametersTypes -> {
|
||||
require(firDeclaration !is FirFile) {
|
||||
"ValueParametersTypes and TypeParametersTypes types cannot be applied to ${firDeclaration::class.qualifiedName}"
|
||||
}
|
||||
lazyResolveDeclaration(
|
||||
firDeclarationToResolve = firDeclaration,
|
||||
moduleFileCache = moduleFileCache,
|
||||
toPhase = FirResolvePhase.TYPES,
|
||||
scopeSession = scopeSession,
|
||||
checkPCE = checkPCE,
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
class A {
|
||||
fun x() {
|
||||
class resolveMe() {
|
||||
val e = 2
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,395 +0,0 @@
|
||||
RAW_FIR:
|
||||
FILE: localDeclaration.kt
|
||||
public? final? [RAW_FIR] class A : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] fun x(): R|kotlin/Unit| {
|
||||
local final? [RAW_FIR] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] val e: <implicit> = IntegerLiteral(2)
|
||||
[TYPES] [ContainingClassKey=resolveMe] public? get(): <implicit>
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
IMPORTS:
|
||||
FILE: localDeclaration.kt
|
||||
public? final? [RAW_FIR] class A : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] fun x(): R|kotlin/Unit| {
|
||||
local final? [RAW_FIR] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] val e: <implicit> = IntegerLiteral(2)
|
||||
[TYPES] [ContainingClassKey=resolveMe] public? get(): <implicit>
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
SUPER_TYPES:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
TYPES:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CONTRACTS:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
IMPLICIT_TYPES_BODY_RESOLVE:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
BODY_RESOLVE:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
NoResolve:
|
||||
FILE: localDeclaration.kt
|
||||
public? final? [RAW_FIR] class A : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] fun x(): R|kotlin/Unit| {
|
||||
local final? [RAW_FIR] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] val e: <implicit> = IntegerLiteral(2)
|
||||
[TYPES] [ContainingClassKey=resolveMe] public? get(): <implicit>
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
BodyResolveWithChildren:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
AnnotationType:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ClassSuperTypes:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
DeclarationStatus:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ValueParametersTypes:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
TypeParametersTypes:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
FILE RAW TO BODY:
|
||||
FILE: localDeclaration.kt
|
||||
public final [BODY_RESOLVE] class A : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] [ContainingClassKey=A] class resolveMe : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|A.resolveMe| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] val e: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=resolveMe] public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
class A {
|
||||
fun x() {
|
||||
fun resolveMe() {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,299 +0,0 @@
|
||||
RAW_FIR:
|
||||
FILE: localFunction.kt
|
||||
public? final? [RAW_FIR] class A : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] fun x(): R|kotlin/Unit| {
|
||||
local final? [RAW_FIR] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
IMPORTS:
|
||||
FILE: localFunction.kt
|
||||
public? final? [RAW_FIR] class A : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] fun x(): R|kotlin/Unit| {
|
||||
local final? [RAW_FIR] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
SUPER_TYPES:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
TYPES:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CONTRACTS:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
IMPLICIT_TYPES_BODY_RESOLVE:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
BODY_RESOLVE:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
NoResolve:
|
||||
FILE: localFunction.kt
|
||||
public? final? [RAW_FIR] class A : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] fun x(): R|kotlin/Unit| {
|
||||
local final? [RAW_FIR] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
BodyResolveWithChildren:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CallableBodyResolve:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CallableReturnType:
|
||||
FILE: localFunction.kt
|
||||
public? final? [RAW_FIR] class A : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] fun x(): R|kotlin/Unit| {
|
||||
local final? [RAW_FIR] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
AnnotationType:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CallableContracts:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
DeclarationStatus:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ValueParametersTypes:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
TypeParametersTypes:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
FILE RAW TO BODY:
|
||||
FILE: localFunction.kt
|
||||
public final [BODY_RESOLVE] class A : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun x(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
fun ddd() {
|
||||
class XX {
|
||||
var x: Int = 2
|
||||
set(resolveMe) = Unit
|
||||
}
|
||||
}
|
||||
@@ -1,359 +0,0 @@
|
||||
RAW_FIR:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public? final? [RAW_FIR] fun ddd(): R|kotlin/Unit| {
|
||||
local final? [RAW_FIR] class XX : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] var x: Int = IntegerLiteral(2)
|
||||
[TYPES] [ContainingClassKey=XX] public? get(): Int
|
||||
[RAW_FIR] [ContainingClassKey=XX] public? set([RAW_FIR] resolveMe: Int): R|kotlin/Unit| {
|
||||
^ Unit#
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
IMPORTS:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public? final? [RAW_FIR] fun ddd(): R|kotlin/Unit| {
|
||||
local final? [RAW_FIR] class XX : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] var x: Int = IntegerLiteral(2)
|
||||
[TYPES] [ContainingClassKey=XX] public? get(): Int
|
||||
[RAW_FIR] [ContainingClassKey=XX] public? set([RAW_FIR] resolveMe: Int): R|kotlin/Unit| {
|
||||
^ Unit#
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
SUPER_TYPES:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
TYPES:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CONTRACTS:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
IMPLICIT_TYPES_BODY_RESOLVE:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
BODY_RESOLVE:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
NoResolve:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public? final? [RAW_FIR] fun ddd(): R|kotlin/Unit| {
|
||||
local final? [RAW_FIR] class XX : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] var x: Int = IntegerLiteral(2)
|
||||
[TYPES] [ContainingClassKey=XX] public? get(): Int
|
||||
[RAW_FIR] [ContainingClassKey=XX] public? set([RAW_FIR] resolveMe: Int): R|kotlin/Unit| {
|
||||
^ Unit#
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
BodyResolveWithChildren:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CallableBodyResolve:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CallableReturnType:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
AnnotationType:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CallableContracts:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
DeclarationStatus:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ValueParametersTypes:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
TypeParametersTypes:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
FILE RAW TO BODY:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] class XX : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=XX] constructor(): R|XX| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=XX] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
-3
@@ -1,3 +0,0 @@
|
||||
fun ddd() {
|
||||
fun kkk<resolveMe>() {}
|
||||
}
|
||||
-135
@@ -1,135 +0,0 @@
|
||||
RAW_FIR:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public? final? [RAW_FIR] fun ddd(): R|kotlin/Unit| {
|
||||
local final? [RAW_FIR] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
IMPORTS:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
SUPER_TYPES:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
TYPES:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CONTRACTS:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
IMPLICIT_TYPES_BODY_RESOLVE:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
BODY_RESOLVE:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
NoResolve:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public? final? [RAW_FIR] fun ddd(): R|kotlin/Unit| {
|
||||
local final? [RAW_FIR] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
BodyResolveWithChildren:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
AnnotationType:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
DeclarationStatus:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ValueParametersTypes:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
TypeParametersTypes:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
FILE RAW TO BODY:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
local final [BODY_RESOLVE] fun <resolveMe> kkk(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
+1
-25
@@ -6,7 +6,6 @@
|
||||
package org.jetbrains.kotlin.analysis.low.level.api.fir
|
||||
|
||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.api.withFirDeclaration
|
||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.lazy.resolve.ResolveType
|
||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.test.base.AbstractLowLevelApiSingleFileTest
|
||||
import org.jetbrains.kotlin.fir.FirElement
|
||||
import org.jetbrains.kotlin.fir.FirRenderer
|
||||
@@ -16,6 +15,7 @@ import org.jetbrains.kotlin.fir.render
|
||||
import org.jetbrains.kotlin.fir.visitors.FirVisitorVoid
|
||||
import org.jetbrains.kotlin.psi.KtDeclaration
|
||||
import org.jetbrains.kotlin.psi.KtFile
|
||||
import org.jetbrains.kotlin.psi.KtVisitorVoid
|
||||
import org.jetbrains.kotlin.test.builders.TestConfigurationBuilder
|
||||
import org.jetbrains.kotlin.test.directives.ConfigurationDirectives
|
||||
import org.jetbrains.kotlin.test.services.TestModuleStructure
|
||||
@@ -66,30 +66,6 @@ abstract class AbstractFirLazyDeclarationResolveTest : AbstractLowLevelApiSingle
|
||||
}
|
||||
}
|
||||
|
||||
for (resolveType in ResolveType.values()) {
|
||||
resolveWithClearCaches(ktFile) { firModuleResolveState ->
|
||||
check(firModuleResolveState is FirModuleResolveStateImpl)
|
||||
val declarationToResolve = firModuleResolveState
|
||||
.getOrBuildFirFile(ktFile)
|
||||
.findResolveMe()
|
||||
|
||||
when (resolveType) {
|
||||
ResolveType.CallableReturnType,
|
||||
ResolveType.CallableBodyResolve,
|
||||
ResolveType.CallableContracts -> if (declarationToResolve !is FirCallableDeclaration) return@resolveWithClearCaches
|
||||
ResolveType.ClassSuperTypes -> if (declarationToResolve !is FirClassLikeDeclaration) return@resolveWithClearCaches
|
||||
else -> {
|
||||
}
|
||||
}
|
||||
|
||||
declarationToResolve.withFirDeclaration(resolveType, firModuleResolveState) {
|
||||
val firFile = firModuleResolveState.getOrBuildFirFile(ktFile)
|
||||
resultBuilder.append("\n${resolveType.name}:\n")
|
||||
resultBuilder.append(firFile.render(rendererOption))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
resolveWithClearCaches(ktFile) { firModuleResolveState ->
|
||||
check(firModuleResolveState is FirModuleResolveStateImpl)
|
||||
val firFile = firModuleResolveState.getOrBuildFirFile(ktFile)
|
||||
|
||||
-24
@@ -54,24 +54,6 @@ public class FirLazyDeclarationResolveTestGenerated extends AbstractFirLazyDecla
|
||||
runTest("analysis/low-level-api-fir/testdata/lazyResolve/functionWithParameter.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("localDeclaration.kt")
|
||||
public void testLocalDeclaration() throws Exception {
|
||||
runTest("analysis/low-level-api-fir/testdata/lazyResolve/localDeclaration.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("localFunction.kt")
|
||||
public void testLocalFunction() throws Exception {
|
||||
runTest("analysis/low-level-api-fir/testdata/lazyResolve/localFunction.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("parameterOfLocalSetter.kt")
|
||||
public void testParameterOfLocalSetter() throws Exception {
|
||||
runTest("analysis/low-level-api-fir/testdata/lazyResolve/parameterOfLocalSetter.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("parameterOfNonLocalSetter.kt")
|
||||
public void testParameterOfNonLocalSetter() throws Exception {
|
||||
@@ -132,12 +114,6 @@ public class FirLazyDeclarationResolveTestGenerated extends AbstractFirLazyDecla
|
||||
runTest("analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithImplicitType.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("typeParameterOfLocalFunction.kt")
|
||||
public void testTypeParameterOfLocalFunction() throws Exception {
|
||||
runTest("analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfLocalFunction.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("typeParameterOfNonLocalFunction.kt")
|
||||
public void testTypeParameterOfNonLocalFunction() throws Exception {
|
||||
|
||||
Reference in New Issue
Block a user