[FIR IDE] Add support of lazy phase for annotation arguments
This commit is contained in:
committed by
TeamCityServer
parent
71def0666e
commit
9fdd3dc53f
+1
-1
@@ -16,7 +16,7 @@ import org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolve
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer
|
||||
|
||||
class FirAnnotationArgumentsResolveTransformer(
|
||||
open class FirAnnotationArgumentsResolveTransformer(
|
||||
session: FirSession,
|
||||
scopeSession: ScopeSession,
|
||||
outerBodyResolveContext: BodyResolveContext? = null
|
||||
|
||||
+2
-1
@@ -85,7 +85,8 @@ internal fun FirLazyDeclarationResolver.lazyResolveDeclaration(
|
||||
checkPCE = checkPCE
|
||||
)
|
||||
} else {
|
||||
val toPhase = if (toResolveType == ResolveType.AnnotationType) FirResolvePhase.TYPES else FirResolvePhase.BODY_RESOLVE
|
||||
val toPhase =
|
||||
if (toResolveType == ResolveType.AnnotationType) FirResolvePhase.TYPES else FirResolvePhase.ARGUMENTS_OF_ANNOTATIONS
|
||||
lazyResolveDeclaration(
|
||||
firDeclarationToResolve = firDeclaration,
|
||||
moduleFileCache = moduleFileCache,
|
||||
|
||||
+86
@@ -0,0 +1,86 @@
|
||||
/*
|
||||
* 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.idea.fir.low.level.api.transformers
|
||||
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotationResolveStatus
|
||||
import org.jetbrains.kotlin.fir.resolve.ResolutionMode
|
||||
import org.jetbrains.kotlin.fir.resolve.ScopeSession
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.plugin.FirAnnotationArgumentsResolveTransformer
|
||||
import org.jetbrains.kotlin.idea.fir.low.level.api.FirPhaseRunner
|
||||
import org.jetbrains.kotlin.idea.fir.low.level.api.api.FirDeclarationDesignationWithFile
|
||||
import org.jetbrains.kotlin.idea.fir.low.level.api.util.ensurePhase
|
||||
|
||||
internal class FirDesignatedAnnotationArgumentsResolveTransformerForIDE(
|
||||
private val designation: FirDeclarationDesignationWithFile,
|
||||
session: FirSession,
|
||||
scopeSession: ScopeSession,
|
||||
) : FirLazyTransformerForIDE, FirAnnotationArgumentsResolveTransformer(session, scopeSession) {
|
||||
|
||||
private fun moveNextDeclaration(designationIterator: Iterator<FirDeclaration>) {
|
||||
if (!designationIterator.hasNext()) {
|
||||
designation.declaration.transform<FirDeclaration, ResolutionMode>(declarationsTransformer, ResolutionMode.ContextIndependent)
|
||||
return
|
||||
}
|
||||
when (val nextElement = designationIterator.next()) {
|
||||
is FirFile -> {
|
||||
context.withFile(nextElement, components) {
|
||||
moveNextDeclaration(designationIterator)
|
||||
}
|
||||
}
|
||||
is FirRegularClass -> {
|
||||
context.withContainingClass(nextElement) {
|
||||
moveNextDeclaration(designationIterator)
|
||||
}
|
||||
}
|
||||
is FirEnumEntry -> {
|
||||
context.forEnumEntry {
|
||||
moveNextDeclaration(designationIterator)
|
||||
}
|
||||
}
|
||||
else -> {
|
||||
error("Unexpected declaration in designation: ${nextElement::class.qualifiedName}")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun transformDeclaration(phaseRunner: FirPhaseRunner) {
|
||||
if (designation.declaration.resolvePhase >= FirResolvePhase.ARGUMENTS_OF_ANNOTATIONS) return
|
||||
designation.declaration.ensurePhase(FirResolvePhase.TYPES)
|
||||
|
||||
val designationIterator = designation.toSequenceWithFile(includeTarget = false).iterator()
|
||||
|
||||
phaseRunner.runPhaseWithCustomResolve(FirResolvePhase.ARGUMENTS_OF_ANNOTATIONS) {
|
||||
moveNextDeclaration(designationIterator)
|
||||
}
|
||||
|
||||
FirLazyTransformerForIDE.updatePhaseDeep(designation.declaration, FirResolvePhase.ARGUMENTS_OF_ANNOTATIONS)
|
||||
ensureResolved(designation.declaration)
|
||||
ensureResolvedDeep(designation.declaration)
|
||||
}
|
||||
|
||||
override fun ensureResolved(declaration: FirDeclaration) {
|
||||
if (declaration is FirAnnotatedDeclaration) {
|
||||
val unresolvedAnnotation = declaration.annotations.firstOrNull { it.resolveStatus == FirAnnotationResolveStatus.Resolved }
|
||||
check(unresolvedAnnotation == null) {
|
||||
"Unexpected resolve status of annotation, expected Resolved but actual $unresolvedAnnotation"
|
||||
}
|
||||
}
|
||||
when (declaration) {
|
||||
is FirSimpleFunction, is FirConstructor, is FirAnonymousInitializer ->
|
||||
declaration.ensurePhase(FirResolvePhase.ARGUMENTS_OF_ANNOTATIONS)
|
||||
is FirProperty -> {
|
||||
declaration.ensurePhase(FirResolvePhase.ARGUMENTS_OF_ANNOTATIONS)
|
||||
// declaration.getter?.ensurePhase(FirResolvePhase.ARGUMENTS_OF_ANNOTATIONS)
|
||||
// declaration.setter?.ensurePhase(FirResolvePhase.ARGUMENTS_OF_ANNOTATIONS)
|
||||
}
|
||||
is FirClass, is FirTypeAlias, is FirEnumEntry, is FirField -> Unit
|
||||
else -> error("Unexpected type: ${declaration::class.simpleName}")
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
+1
-1
@@ -37,7 +37,7 @@ internal class FirDesignatedStatusResolveTransformerForIDE(
|
||||
|
||||
override fun transformDeclaration(phaseRunner: FirPhaseRunner) {
|
||||
if (designation.declaration.resolvePhase >= FirResolvePhase.STATUS) return
|
||||
designation.declaration.ensurePhase(FirResolvePhase.TYPES)
|
||||
designation.declaration.ensurePhase(FirResolvePhase.ARGUMENTS_OF_ANNOTATIONS)
|
||||
|
||||
val transformer = FirDesignatedStatusResolveTransformerForIDE()
|
||||
phaseRunner.runPhaseWithCustomResolve(FirResolvePhase.STATUS) {
|
||||
|
||||
+5
@@ -39,6 +39,11 @@ internal object LazyTransformerFactory {
|
||||
designation.firFile.moduleData.session,
|
||||
scopeSession,
|
||||
)
|
||||
FirResolvePhase.ARGUMENTS_OF_ANNOTATIONS -> FirDesignatedAnnotationArgumentsResolveTransformerForIDE(
|
||||
designation,
|
||||
designation.firFile.moduleData.session,
|
||||
scopeSession,
|
||||
)
|
||||
FirResolvePhase.STATUS -> FirDesignatedStatusResolveTransformerForIDE(
|
||||
designation,
|
||||
designation.firFile.moduleData.session,
|
||||
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
enum class X {
|
||||
A
|
||||
}
|
||||
|
||||
annotation class Anno(val args: A.X)
|
||||
|
||||
class B {
|
||||
@Anno(X.A)
|
||||
fun resolveMe() {
|
||||
}
|
||||
|
||||
@Anno(X.A)
|
||||
fun foo() {
|
||||
}
|
||||
}
|
||||
Vendored
+739
@@ -0,0 +1,739 @@
|
||||
RAW_FIR:
|
||||
FILE: annotationParameters.kt
|
||||
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
|
||||
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] class B : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [RAW_FIR] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [RAW_FIR] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
IMPORTS:
|
||||
FILE: annotationParameters.kt
|
||||
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
|
||||
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] class B : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [RAW_FIR] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [RAW_FIR] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
SUPER_TYPES:
|
||||
FILE: annotationParameters.kt
|
||||
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
|
||||
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] class B : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [SUPER_TYPES] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [RAW_FIR] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
TYPES:
|
||||
FILE: annotationParameters.kt
|
||||
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
|
||||
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public? final? [SUPER_TYPES] class B : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(X#.A#) public? final? [TYPES] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [SUPER_TYPES] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: annotationParameters.kt
|
||||
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
|
||||
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public? final? [SUPER_TYPES] class B : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [SUPER_TYPES] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: annotationParameters.kt
|
||||
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
|
||||
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public final [SUPER_TYPES] class B : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [STATUS] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [SUPER_TYPES] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CONTRACTS:
|
||||
FILE: annotationParameters.kt
|
||||
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
|
||||
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public final [SUPER_TYPES] class B : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [CONTRACTS] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [SUPER_TYPES] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
IMPLICIT_TYPES_BODY_RESOLVE:
|
||||
FILE: annotationParameters.kt
|
||||
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
|
||||
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public final [STATUS] class B : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [IMPLICIT_TYPES_BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [STATUS] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
BODY_RESOLVE:
|
||||
FILE: annotationParameters.kt
|
||||
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
|
||||
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public final [SUPER_TYPES] annotation class Anno : R|kotlin/Annotation| {
|
||||
public [STATUS] [ContainingClassKey=Anno] constructor([RAW_FIR] args: <ERROR TYPE REF: Symbol not found for A.X>): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [SUPER_TYPES] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public final [STATUS] class B : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [STATUS] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
NoResolve:
|
||||
FILE: annotationParameters.kt
|
||||
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
|
||||
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] class B : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [RAW_FIR] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [RAW_FIR] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
BodyResolveWithChildren:
|
||||
FILE: annotationParameters.kt
|
||||
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
|
||||
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public final [SUPER_TYPES] annotation class Anno : R|kotlin/Annotation| {
|
||||
public [STATUS] [ContainingClassKey=Anno] constructor([RAW_FIR] args: <ERROR TYPE REF: Symbol not found for A.X>): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [SUPER_TYPES] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public final [STATUS] class B : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [STATUS] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CallableBodyResolve:
|
||||
FILE: annotationParameters.kt
|
||||
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
|
||||
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public final [SUPER_TYPES] annotation class Anno : R|kotlin/Annotation| {
|
||||
public [STATUS] [ContainingClassKey=Anno] constructor([RAW_FIR] args: <ERROR TYPE REF: Symbol not found for A.X>): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [SUPER_TYPES] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public final [STATUS] class B : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [STATUS] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CallableReturnType:
|
||||
FILE: annotationParameters.kt
|
||||
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
|
||||
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] class B : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [RAW_FIR] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [RAW_FIR] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
AnnotationType:
|
||||
FILE: annotationParameters.kt
|
||||
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
|
||||
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public? final? [SUPER_TYPES] class B : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(X#.A#) public? final? [TYPES] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [SUPER_TYPES] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: annotationParameters.kt
|
||||
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
|
||||
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public? final? [SUPER_TYPES] class B : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [SUPER_TYPES] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CallableContracts:
|
||||
FILE: annotationParameters.kt
|
||||
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
|
||||
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public final [SUPER_TYPES] class B : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [CONTRACTS] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [SUPER_TYPES] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
DeclarationStatus:
|
||||
FILE: annotationParameters.kt
|
||||
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
|
||||
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public final [SUPER_TYPES] class B : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [STATUS] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [SUPER_TYPES] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ValueParametersTypes:
|
||||
FILE: annotationParameters.kt
|
||||
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
|
||||
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public? final? [SUPER_TYPES] class B : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(X#.A#) public? final? [TYPES] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [SUPER_TYPES] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
TypeParametersTypes:
|
||||
FILE: annotationParameters.kt
|
||||
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
|
||||
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||
public? [RAW_FIR] [ContainingClassKey=Anno] constructor([RAW_FIR] args: A.X): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [RAW_FIR] [IsFromPrimaryConstructor=true] val args: A.X = R|<local>/args|
|
||||
[TYPES] public? get(): A.X
|
||||
|
||||
}
|
||||
public? final? [SUPER_TYPES] class B : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(X#.A#) public? final? [TYPES] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@Anno(X#.A#) public? final? [SUPER_TYPES] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
FILE RAW TO BODY:
|
||||
FILE: annotationParameters.kt
|
||||
public final [BODY_RESOLVE] enum class X : R|kotlin/Enum<X>| {
|
||||
private [BODY_RESOLVE] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Enum<X>|>()
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] enum entry A: R|X|
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun values(): R|kotlin/Array<X>| {
|
||||
}
|
||||
|
||||
public final static [BODY_RESOLVE] [ContainingClassKey=X] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|X| {
|
||||
}
|
||||
|
||||
}
|
||||
public final [BODY_RESOLVE] annotation class Anno : R|kotlin/Annotation| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=Anno] constructor([BODY_RESOLVE] args: <ERROR TYPE REF: Symbol not found for A.X>): R|Anno| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] [IsFromPrimaryConstructor=true] val args: <ERROR TYPE REF: Symbol not found for A.X> = R|<local>/args|
|
||||
[BODY_RESOLVE] public get(): <ERROR TYPE REF: Symbol not found for A.X>
|
||||
|
||||
}
|
||||
public final [BODY_RESOLVE] class B : R|kotlin/Any| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@R|Anno|(Q|X|.R|/X.A|) public final [BODY_RESOLVE] fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
+7
-1
@@ -22,6 +22,12 @@ FILE: annotations.kt
|
||||
@R|kotlin/Suppress|(String(2)) public? final? [TYPES] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: annotations.kt
|
||||
@FILE:Suppress(String(1))
|
||||
@R|kotlin/Suppress|(String(2)) public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: annotations.kt
|
||||
@FILE:Suppress(String(1))
|
||||
@@ -79,7 +85,7 @@ FILE: annotations.kt
|
||||
AnnotationsArguments:
|
||||
FILE: annotations.kt
|
||||
@FILE:Suppress(String(1))
|
||||
@R|kotlin/Suppress|(vararg(String(2))) public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
@R|kotlin/Suppress|(String(2)) public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
CallableContracts:
|
||||
|
||||
+33
-8
@@ -98,6 +98,31 @@ FILE: classMembers.kt
|
||||
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: classMembers.kt
|
||||
public? final? [SUPER_TYPES] class A : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(functionWithLazyBody#())
|
||||
}
|
||||
|
||||
public? final? [SUPER_TYPES] val x: Int = IntegerLiteral(10)
|
||||
[SUPER_TYPES] [ContainingClassKey=A] public? get(): Int {
|
||||
^ field#
|
||||
}
|
||||
|
||||
public? final? [SUPER_TYPES] fun receive([RAW_FIR] value: String): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
public? final? [SUPER_TYPES] fun functionWithLazyBody(): String {
|
||||
^functionWithLazyBody String(42)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: classMembers.kt
|
||||
public final [SUPER_TYPES] class A : R|kotlin/Any| {
|
||||
@@ -325,24 +350,24 @@ FILE: classMembers.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: classMembers.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
public? final? [SUPER_TYPES] class A : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
this@R|/A|.R|/A.receive|(this@R|/A|.R|/A.functionWithLazyBody|())
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(functionWithLazyBody#())
|
||||
}
|
||||
|
||||
public final [STATUS] val x: R|kotlin/Int| = IntegerLiteral(10)
|
||||
[STATUS] [ContainingClassKey=A] public get(): R|kotlin/Int| {
|
||||
public? final? [SUPER_TYPES] val x: Int = IntegerLiteral(10)
|
||||
[SUPER_TYPES] [ContainingClassKey=A] public? get(): Int {
|
||||
^ field#
|
||||
}
|
||||
|
||||
public final [STATUS] fun receive([RAW_FIR] value: R|kotlin/String|): R|kotlin/Unit| {
|
||||
public? final? [SUPER_TYPES] fun receive([RAW_FIR] value: String): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
public final [STATUS] fun functionWithLazyBody(): R|kotlin/String| {
|
||||
public? final? [SUPER_TYPES] fun functionWithLazyBody(): String {
|
||||
^functionWithLazyBody String(42)
|
||||
}
|
||||
|
||||
|
||||
+73
-25
@@ -190,6 +190,54 @@ FILE: delegates.kt
|
||||
D|/variableWithImplicitType|.setValue#(Null(null), ::R|/variableWithImplicitType|, R|<local>/variableWithImplicitType|)
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: delegates.kt
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(valueWithExplicitType#)
|
||||
receive#(valueWithImplicitType#)
|
||||
variableWithExplicitType# = IntegerLiteral(10)
|
||||
variableWithImplicitType# = IntegerLiteral(10)
|
||||
}
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: Int): R|kotlin/Unit| {
|
||||
}
|
||||
public? final? [RAW_FIR] val delegate: <implicit> = object : ReadWriteProperty<Any?, Int> {
|
||||
private [RAW_FIR] [ContainingClassKey=<anonymous>] constructor(): R|<anonymous>| {
|
||||
super<<implicit>>()
|
||||
}
|
||||
|
||||
public? open? override [RAW_FIR] fun getValue([RAW_FIR] thisRef: Any?, [RAW_FIR] property: KProperty<*>): Int {
|
||||
^getValue IntegerLiteral(1)
|
||||
}
|
||||
|
||||
public? open? override [RAW_FIR] fun setValue([RAW_FIR] thisRef: Any?, [RAW_FIR] property: KProperty<*>, [RAW_FIR] value: Int): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
[TYPES] public? get(): <implicit>
|
||||
public? final? [RAW_FIR] val valueWithExplicitType: Intby delegate#
|
||||
[RAW_FIR] public? get(): <implicit> {
|
||||
^ D|/valueWithExplicitType|.getValue#(Null(null), ::R|/valueWithExplicitType|)
|
||||
}
|
||||
public? final? [RAW_FIR] val valueWithImplicitType: <implicit>by delegate#
|
||||
[RAW_FIR] public? get(): <implicit> {
|
||||
^ D|/valueWithImplicitType|.getValue#(Null(null), ::R|/valueWithImplicitType|)
|
||||
}
|
||||
public? final? [RAW_FIR] var variableWithExplicitType: Intby delegate#
|
||||
[RAW_FIR] public? get(): <implicit> {
|
||||
^ D|/variableWithExplicitType|.getValue#(Null(null), ::R|/variableWithExplicitType|)
|
||||
}
|
||||
[RAW_FIR] public? set([RAW_FIR] <set-?>: <implicit>): R|kotlin/Unit| {
|
||||
D|/variableWithExplicitType|.setValue#(Null(null), ::R|/variableWithExplicitType|, R|<local>/variableWithExplicitType|)
|
||||
}
|
||||
public? final? [RAW_FIR] var variableWithImplicitType: <implicit>by delegate#
|
||||
[RAW_FIR] public? get(): <implicit> {
|
||||
^ D|/variableWithImplicitType|.getValue#(Null(null), ::R|/variableWithImplicitType|)
|
||||
}
|
||||
[RAW_FIR] public? set([RAW_FIR] <set-?>: <implicit>): R|kotlin/Unit| {
|
||||
D|/variableWithImplicitType|.setValue#(Null(null), ::R|/variableWithImplicitType|, R|<local>/variableWithImplicitType|)
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: delegates.kt
|
||||
public final [STATUS] fun resolveMe(): R|kotlin/Unit| {
|
||||
@@ -624,50 +672,50 @@ FILE: delegates.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: delegates.kt
|
||||
public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
R|/receive|(R|/valueWithExplicitType|)
|
||||
R|/receive|(R|/valueWithImplicitType|)
|
||||
R|/variableWithExplicitType| = Int(10)
|
||||
R|/variableWithImplicitType| = Int(10)
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(valueWithExplicitType#)
|
||||
receive#(valueWithImplicitType#)
|
||||
variableWithExplicitType# = IntegerLiteral(10)
|
||||
variableWithImplicitType# = IntegerLiteral(10)
|
||||
}
|
||||
public final [STATUS] fun receive([RAW_FIR] value: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: Int): R|kotlin/Unit| {
|
||||
}
|
||||
public final [STATUS] val delegate: R|kotlin/properties/ReadWriteProperty<kotlin/Any?, kotlin/Int>| = object : R|kotlin/properties/ReadWriteProperty<kotlin/Any?, kotlin/Int>| {
|
||||
public? final? [RAW_FIR] val delegate: <implicit> = object : ReadWriteProperty<Any?, Int> {
|
||||
private [RAW_FIR] [ContainingClassKey=<anonymous>] constructor(): R|<anonymous>| {
|
||||
super<R|kotlin/Any|>()
|
||||
super<<implicit>>()
|
||||
}
|
||||
|
||||
public final override operator [RAW_FIR] fun getValue([RAW_FIR] thisRef: R|kotlin/Any?|, [RAW_FIR] property: R|kotlin/reflect/KProperty<*>|): R|kotlin/Int| {
|
||||
^getValue Int(1)
|
||||
public? open? override [RAW_FIR] fun getValue([RAW_FIR] thisRef: Any?, [RAW_FIR] property: KProperty<*>): Int {
|
||||
^getValue IntegerLiteral(1)
|
||||
}
|
||||
|
||||
public final override operator [RAW_FIR] fun setValue([RAW_FIR] thisRef: R|kotlin/Any?|, [RAW_FIR] property: R|kotlin/reflect/KProperty<*>|, [RAW_FIR] value: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
public? open? override [RAW_FIR] fun setValue([RAW_FIR] thisRef: Any?, [RAW_FIR] property: KProperty<*>, [RAW_FIR] value: Int): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
[BODY_RESOLVE] public get(): R|kotlin/properties/ReadWriteProperty<kotlin/Any?, kotlin/Int>|
|
||||
public final [STATUS] val valueWithExplicitType: R|kotlin/Int|by delegate#
|
||||
[STATUS] public get(): <implicit> {
|
||||
[TYPES] public? get(): <implicit>
|
||||
public? final? [RAW_FIR] val valueWithExplicitType: Intby delegate#
|
||||
[RAW_FIR] public? get(): <implicit> {
|
||||
^ D|/valueWithExplicitType|.getValue#(Null(null), ::R|/valueWithExplicitType|)
|
||||
}
|
||||
public final [IMPLICIT_TYPES_BODY_RESOLVE] val valueWithImplicitType: R|kotlin/Int|by R|/delegate|
|
||||
[IMPLICIT_TYPES_BODY_RESOLVE] public get(): R|kotlin/Int| {
|
||||
^ D|/valueWithImplicitType|.R|SubstitutionOverride<kotlin/properties/ReadWriteProperty.getValue: R|kotlin/Int|>|(Null(null), ::R|/valueWithImplicitType|)
|
||||
public? final? [RAW_FIR] val valueWithImplicitType: <implicit>by delegate#
|
||||
[RAW_FIR] public? get(): <implicit> {
|
||||
^ D|/valueWithImplicitType|.getValue#(Null(null), ::R|/valueWithImplicitType|)
|
||||
}
|
||||
public final [STATUS] var variableWithExplicitType: R|kotlin/Int|by delegate#
|
||||
[STATUS] public get(): <implicit> {
|
||||
public? final? [RAW_FIR] var variableWithExplicitType: Intby delegate#
|
||||
[RAW_FIR] public? get(): <implicit> {
|
||||
^ D|/variableWithExplicitType|.getValue#(Null(null), ::R|/variableWithExplicitType|)
|
||||
}
|
||||
[STATUS] public set([RAW_FIR] <set-?>: <implicit>): R|kotlin/Unit| {
|
||||
[RAW_FIR] public? set([RAW_FIR] <set-?>: <implicit>): R|kotlin/Unit| {
|
||||
D|/variableWithExplicitType|.setValue#(Null(null), ::R|/variableWithExplicitType|, R|<local>/variableWithExplicitType|)
|
||||
}
|
||||
public final [IMPLICIT_TYPES_BODY_RESOLVE] var variableWithImplicitType: R|kotlin/Int|by R|/delegate|
|
||||
[IMPLICIT_TYPES_BODY_RESOLVE] public get(): R|kotlin/Int| {
|
||||
^ D|/variableWithImplicitType|.R|SubstitutionOverride<kotlin/properties/ReadWriteProperty.getValue: R|kotlin/Int|>|(Null(null), ::R|/variableWithImplicitType|)
|
||||
public? final? [RAW_FIR] var variableWithImplicitType: <implicit>by delegate#
|
||||
[RAW_FIR] public? get(): <implicit> {
|
||||
^ D|/variableWithImplicitType|.getValue#(Null(null), ::R|/variableWithImplicitType|)
|
||||
}
|
||||
[IMPLICIT_TYPES_BODY_RESOLVE] public set([RAW_FIR] <set-?>: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
D|/variableWithImplicitType|.R|SubstitutionOverride<kotlin/properties/ReadWriteProperty.setValue: R|kotlin/Unit|>|(Null(null), ::R|/variableWithImplicitType|, R|<local>/variableWithImplicitType|)
|
||||
[RAW_FIR] public? set([RAW_FIR] <set-?>: <implicit>): R|kotlin/Unit| {
|
||||
D|/variableWithImplicitType|.setValue#(Null(null), ::R|/variableWithImplicitType|, R|<local>/variableWithImplicitType|)
|
||||
}
|
||||
|
||||
CallableContracts:
|
||||
|
||||
Vendored
+10
-2
@@ -30,6 +30,14 @@ FILE: functionWithParameter.kt
|
||||
^resolveMe Unit#
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: functionWithParameter.kt
|
||||
public? final? [RAW_FIR] interface I : R|kotlin/Any| {
|
||||
}
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe([RAW_FIR] param: R|I|): <implicit> {
|
||||
^resolveMe Unit#
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: functionWithParameter.kt
|
||||
public? final? [RAW_FIR] interface I : R|kotlin/Any| {
|
||||
@@ -106,8 +114,8 @@ AnnotationsArguments:
|
||||
FILE: functionWithParameter.kt
|
||||
public? final? [RAW_FIR] interface I : R|kotlin/Any| {
|
||||
}
|
||||
public final [BODY_RESOLVE] fun resolveMe([BODY_RESOLVE] param: R|I|): R|kotlin/Unit| {
|
||||
^resolveMe Q|kotlin/Unit|
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe([RAW_FIR] param: R|I|): <implicit> {
|
||||
^resolveMe Unit#
|
||||
}
|
||||
|
||||
CallableContracts:
|
||||
|
||||
+22
@@ -86,6 +86,28 @@ FILE: localDeclaration.kt
|
||||
|
||||
}
|
||||
|
||||
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|
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: localDeclaration.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
|
||||
+15
@@ -58,6 +58,21 @@ FILE: localFunction.kt
|
||||
|
||||
}
|
||||
|
||||
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| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: localFunction.kt
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
|
||||
Vendored
+18
@@ -70,6 +70,24 @@ FILE: parameterOfLocalSetter.kt
|
||||
|
||||
}
|
||||
|
||||
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|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: parameterOfLocalSetter.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
|
||||
Vendored
+21
-6
@@ -58,6 +58,21 @@ FILE: parameterOfNonLocalSetter.kt
|
||||
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: parameterOfNonLocalSetter.kt
|
||||
public? final? [SUPER_TYPES] class X : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] var x: R|kotlin/Int| = IntegerLiteral(2)
|
||||
[TYPES] [ContainingClassKey=X] public? get(): R|kotlin/Int|
|
||||
[ARGUMENTS_OF_ANNOTATIONS] [ContainingClassKey=X] public? set([RAW_FIR] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Unit#
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: parameterOfNonLocalSetter.kt
|
||||
public final [SUPER_TYPES] class X : R|kotlin/Any| {
|
||||
@@ -195,15 +210,15 @@ FILE: parameterOfNonLocalSetter.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: parameterOfNonLocalSetter.kt
|
||||
public final [STATUS] class X : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||
public? final? [SUPER_TYPES] class X : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] [ContainingClassKey=X] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] [ContainingClassKey=X] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] var x: R|kotlin/Int| = IntegerLiteral(2)
|
||||
[TYPES] [ContainingClassKey=X] public? get(): R|kotlin/Int|
|
||||
[ARGUMENTS_OF_ANNOTATIONS] [ContainingClassKey=X] public? set([RAW_FIR] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Unit#
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+17
-5
@@ -46,6 +46,18 @@ FILE: propertyWithGetter.kt
|
||||
^ IntegerLiteral(42)
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: propertyWithGetter.kt
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(withGetter#)
|
||||
}
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: Int): R|kotlin/Unit| {
|
||||
}
|
||||
public? final? [RAW_FIR] val withGetter: Int
|
||||
[RAW_FIR] public? get(): Int {
|
||||
^ IntegerLiteral(42)
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: propertyWithGetter.kt
|
||||
public final [STATUS] fun resolveMe(): R|kotlin/Unit| {
|
||||
@@ -156,13 +168,13 @@ FILE: propertyWithGetter.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: propertyWithGetter.kt
|
||||
public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
R|/receive|(R|/withGetter|)
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(withGetter#)
|
||||
}
|
||||
public final [STATUS] fun receive([RAW_FIR] value: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: Int): R|kotlin/Unit| {
|
||||
}
|
||||
public final [STATUS] val withGetter: R|kotlin/Int|
|
||||
[STATUS] public get(): R|kotlin/Int| {
|
||||
public? final? [RAW_FIR] val withGetter: Int
|
||||
[RAW_FIR] public? get(): Int {
|
||||
^ IntegerLiteral(42)
|
||||
}
|
||||
|
||||
|
||||
Vendored
+23
-7
@@ -62,6 +62,22 @@ FILE: propertyWithGetterAndSetter.kt
|
||||
field# = value#
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: propertyWithGetterAndSetter.kt
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(withGetterAndSetter#)
|
||||
withGetterAndSetter# = IntegerLiteral(123)
|
||||
}
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: Int): R|kotlin/Unit| {
|
||||
}
|
||||
public? final? [RAW_FIR] var withGetterAndSetter: Int = IntegerLiteral(42)
|
||||
[RAW_FIR] public? get(): Int {
|
||||
^ field#
|
||||
}
|
||||
[RAW_FIR] public? set([RAW_FIR] value: Int): R|kotlin/Unit| {
|
||||
field# = value#
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: propertyWithGetterAndSetter.kt
|
||||
public final [STATUS] fun resolveMe(): R|kotlin/Unit| {
|
||||
@@ -208,17 +224,17 @@ FILE: propertyWithGetterAndSetter.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: propertyWithGetterAndSetter.kt
|
||||
public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
R|/receive|(R|/withGetterAndSetter|)
|
||||
R|/withGetterAndSetter| = Int(123)
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(withGetterAndSetter#)
|
||||
withGetterAndSetter# = IntegerLiteral(123)
|
||||
}
|
||||
public final [STATUS] fun receive([RAW_FIR] value: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: Int): R|kotlin/Unit| {
|
||||
}
|
||||
public final [STATUS] var withGetterAndSetter: R|kotlin/Int| = IntegerLiteral(42)
|
||||
[STATUS] public get(): R|kotlin/Int| {
|
||||
public? final? [RAW_FIR] var withGetterAndSetter: Int = IntegerLiteral(42)
|
||||
[RAW_FIR] public? get(): Int {
|
||||
^ field#
|
||||
}
|
||||
[STATUS] public set([RAW_FIR] value: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
[RAW_FIR] public? set([RAW_FIR] value: Int): R|kotlin/Unit| {
|
||||
field# = value#
|
||||
}
|
||||
|
||||
|
||||
Vendored
+12
-4
@@ -30,6 +30,14 @@ FILE: propertyWithInitializer.kt
|
||||
public? final? [RAW_FIR] val property: Int = IntegerLiteral(10)
|
||||
[TYPES] public? get(): Int
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: propertyWithInitializer.kt
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(property#)
|
||||
}
|
||||
public? final? [RAW_FIR] val property: Int = IntegerLiteral(10)
|
||||
[TYPES] public? get(): Int
|
||||
|
||||
STATUS:
|
||||
FILE: propertyWithInitializer.kt
|
||||
public final [STATUS] fun resolveMe(): R|kotlin/Unit| {
|
||||
@@ -104,11 +112,11 @@ FILE: propertyWithInitializer.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: propertyWithInitializer.kt
|
||||
public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
<Unresolved name: receive>#(R|/property|)
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(property#)
|
||||
}
|
||||
public final [STATUS] val property: R|kotlin/Int| = IntegerLiteral(10)
|
||||
[BODY_RESOLVE] public get(): R|kotlin/Int|
|
||||
public? final? [RAW_FIR] val property: Int = IntegerLiteral(10)
|
||||
[TYPES] public? get(): Int
|
||||
|
||||
CallableContracts:
|
||||
FILE: propertyWithInitializer.kt
|
||||
|
||||
Vendored
+20
-5
@@ -58,6 +58,21 @@ FILE: secondaryConstructor.kt
|
||||
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: secondaryConstructor.kt
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(A#(IntegerLiteral(42)))
|
||||
}
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: A): R|kotlin/Unit| {
|
||||
}
|
||||
public? final? [RAW_FIR] class A : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=A] constructor([RAW_FIR] x: Int): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
[RAW_FIR] lval a: <implicit> = x#
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: secondaryConstructor.kt
|
||||
public final [STATUS] fun resolveMe(): R|kotlin/Unit| {
|
||||
@@ -195,13 +210,13 @@ FILE: secondaryConstructor.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: secondaryConstructor.kt
|
||||
public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
R|/receive|(R|/A.A|(Int(42)))
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(A#(IntegerLiteral(42)))
|
||||
}
|
||||
public final [STATUS] fun receive([RAW_FIR] value: R|A|): R|kotlin/Unit| {
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: A): R|kotlin/Unit| {
|
||||
}
|
||||
public final [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor([RAW_FIR] x: R|kotlin/Int|): R|A| {
|
||||
public? final? [RAW_FIR] class A : R|kotlin/Any| {
|
||||
public? [RAW_FIR] [ContainingClassKey=A] constructor([RAW_FIR] x: Int): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
[RAW_FIR] lval a: <implicit> = x#
|
||||
}
|
||||
|
||||
+25
-4
@@ -82,6 +82,27 @@ FILE: superTypes.kt
|
||||
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: superTypes.kt
|
||||
public? open [SUPER_TYPES] class A : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
public? open [RAW_FIR] class B : A {
|
||||
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<A>()
|
||||
}
|
||||
|
||||
}
|
||||
public? open [ARGUMENTS_OF_ANNOTATIONS] class resolveMe : R|A| {
|
||||
public? [ARGUMENTS_OF_ANNOTATIONS] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
|
||||
super<R|A|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: superTypes.kt
|
||||
public open [TYPES] class A : R|kotlin/Any| {
|
||||
@@ -231,8 +252,8 @@ FILE: superTypes.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: superTypes.kt
|
||||
public open [STATUS] class A : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||
public? open [SUPER_TYPES] class A : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@@ -243,8 +264,8 @@ FILE: superTypes.kt
|
||||
}
|
||||
|
||||
}
|
||||
public open [BODY_RESOLVE] class resolveMe : R|A| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
|
||||
public? open [ARGUMENTS_OF_ANNOTATIONS] class resolveMe : R|A| {
|
||||
public? [ARGUMENTS_OF_ANNOTATIONS] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
|
||||
super<R|A|>()
|
||||
}
|
||||
|
||||
|
||||
+32
-5
@@ -106,6 +106,33 @@ FILE: superTypesLoop.kt
|
||||
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: superTypesLoop.kt
|
||||
public? open [ARGUMENTS_OF_ANNOTATIONS] class resolveMe : R|C| {
|
||||
public? [ARGUMENTS_OF_ANNOTATIONS] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
|
||||
super<R|C|>()
|
||||
}
|
||||
|
||||
}
|
||||
public? open [RAW_FIR] class A : <ERROR TYPE REF: Loop in supertype: /A -> /B> {
|
||||
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
|
||||
super<B>()
|
||||
}
|
||||
|
||||
}
|
||||
public? open [RAW_FIR] class B : <ERROR TYPE REF: Loop in supertype: /B -> /C> {
|
||||
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<C>()
|
||||
}
|
||||
|
||||
}
|
||||
public? open [SUPER_TYPES] class C : <ERROR TYPE REF: Loop in supertype: /C -> /A> {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=C] constructor(): R|C| {
|
||||
super<A>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: superTypesLoop.kt
|
||||
public open [STATUS] class resolveMe : R|C| {
|
||||
@@ -297,8 +324,8 @@ FILE: superTypesLoop.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: superTypesLoop.kt
|
||||
public open [BODY_RESOLVE] class resolveMe : R|C| {
|
||||
public [BODY_RESOLVE] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
|
||||
public? open [ARGUMENTS_OF_ANNOTATIONS] class resolveMe : R|C| {
|
||||
public? [ARGUMENTS_OF_ANNOTATIONS] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
|
||||
super<R|C|>()
|
||||
}
|
||||
|
||||
@@ -315,9 +342,9 @@ FILE: superTypesLoop.kt
|
||||
}
|
||||
|
||||
}
|
||||
public open [STATUS] class C : <ERROR TYPE REF: Loop in supertype: /C -> /A> {
|
||||
public [STATUS] [ContainingClassKey=C] constructor(): R|C| {
|
||||
super<R|A|>()
|
||||
public? open [SUPER_TYPES] class C : <ERROR TYPE REF: Loop in supertype: /C -> /A> {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=C] constructor(): R|C| {
|
||||
super<A>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+15
-4
@@ -42,6 +42,17 @@ FILE: topLevelFunctions.kt
|
||||
^functionWithLazyBody String(42)
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: topLevelFunctions.kt
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(functionWithLazyBody#())
|
||||
}
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: String): R|kotlin/Unit| {
|
||||
}
|
||||
public? final? [RAW_FIR] fun functionWithLazyBody(): String {
|
||||
^functionWithLazyBody String(42)
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: topLevelFunctions.kt
|
||||
public final [STATUS] fun resolveMe(): R|kotlin/Unit| {
|
||||
@@ -143,12 +154,12 @@ FILE: topLevelFunctions.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: topLevelFunctions.kt
|
||||
public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
R|/receive|(R|/functionWithLazyBody|())
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(functionWithLazyBody#())
|
||||
}
|
||||
public final [STATUS] fun receive([RAW_FIR] value: R|kotlin/String|): R|kotlin/Unit| {
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: String): R|kotlin/Unit| {
|
||||
}
|
||||
public final [STATUS] fun functionWithLazyBody(): R|kotlin/String| {
|
||||
public? final? [RAW_FIR] fun functionWithLazyBody(): String {
|
||||
^functionWithLazyBody String(42)
|
||||
}
|
||||
|
||||
|
||||
+15
-4
@@ -42,6 +42,17 @@ FILE: topLevelFunctionsWithExpressionBodyAndExplicitType.kt
|
||||
^functionWithLazyBody String(42)
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: topLevelFunctionsWithExpressionBodyAndExplicitType.kt
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(functionWithLazyBody#())
|
||||
}
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: String): R|kotlin/Unit| {
|
||||
}
|
||||
public? final? [RAW_FIR] fun functionWithLazyBody(): String {
|
||||
^functionWithLazyBody String(42)
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: topLevelFunctionsWithExpressionBodyAndExplicitType.kt
|
||||
public final [STATUS] fun resolveMe(): R|kotlin/Unit| {
|
||||
@@ -143,12 +154,12 @@ FILE: topLevelFunctionsWithExpressionBodyAndExplicitType.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: topLevelFunctionsWithExpressionBodyAndExplicitType.kt
|
||||
public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
R|/receive|(R|/functionWithLazyBody|())
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(functionWithLazyBody#())
|
||||
}
|
||||
public final [STATUS] fun receive([RAW_FIR] value: R|kotlin/String|): R|kotlin/Unit| {
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: String): R|kotlin/Unit| {
|
||||
}
|
||||
public final [STATUS] fun functionWithLazyBody(): R|kotlin/String| {
|
||||
public? final? [RAW_FIR] fun functionWithLazyBody(): String {
|
||||
^functionWithLazyBody String(42)
|
||||
}
|
||||
|
||||
|
||||
+15
-4
@@ -42,6 +42,17 @@ FILE: topLevelFunctionsWithImplicitType.kt
|
||||
^functionWithLazyBody String(42)
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: topLevelFunctionsWithImplicitType.kt
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(functionWithLazyBody#())
|
||||
}
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: String): R|kotlin/Unit| {
|
||||
}
|
||||
public? final? [RAW_FIR] fun functionWithLazyBody(): <implicit> {
|
||||
^functionWithLazyBody String(42)
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: topLevelFunctionsWithImplicitType.kt
|
||||
public final [STATUS] fun resolveMe(): R|kotlin/Unit| {
|
||||
@@ -143,12 +154,12 @@ FILE: topLevelFunctionsWithImplicitType.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: topLevelFunctionsWithImplicitType.kt
|
||||
public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
|
||||
R|/receive|(R|/functionWithLazyBody|())
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| {
|
||||
receive#(functionWithLazyBody#())
|
||||
}
|
||||
public final [STATUS] fun receive([RAW_FIR] value: R|kotlin/String|): R|kotlin/Unit| {
|
||||
public? final? [RAW_FIR] fun receive([RAW_FIR] value: String): R|kotlin/Unit| {
|
||||
}
|
||||
public final [IMPLICIT_TYPES_BODY_RESOLVE] fun functionWithLazyBody(): R|kotlin/String| {
|
||||
public? final? [RAW_FIR] fun functionWithLazyBody(): <implicit> {
|
||||
^functionWithLazyBody String(42)
|
||||
}
|
||||
|
||||
|
||||
Vendored
+8
@@ -30,6 +30,14 @@ FILE: typeParameterOfLocalFunction.kt
|
||||
|
||||
}
|
||||
|
||||
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| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: typeParameterOfLocalFunction.kt
|
||||
public final [BODY_RESOLVE] fun ddd(): R|kotlin/Unit| {
|
||||
|
||||
+15
-3
@@ -46,6 +46,18 @@ FILE: typeParameterOfNonLocalFunction.kt
|
||||
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: typeParameterOfNonLocalFunction.kt
|
||||
public? final? [SUPER_TYPES] class X : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun <resolveMe> ddd(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: typeParameterOfNonLocalFunction.kt
|
||||
public final [SUPER_TYPES] class X : R|kotlin/Any| {
|
||||
@@ -132,12 +144,12 @@ FILE: typeParameterOfNonLocalFunction.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: typeParameterOfNonLocalFunction.kt
|
||||
public final [STATUS] class X : R|kotlin/Any| {
|
||||
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||
public? final? [SUPER_TYPES] class X : R|kotlin/Any| {
|
||||
public? [SUPER_TYPES] [ContainingClassKey=X] constructor(): R|X| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final [BODY_RESOLVE] fun <resolveMe> ddd(): R|kotlin/Unit| {
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun <resolveMe> ddd(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Vendored
+6
-1
@@ -18,6 +18,11 @@ FILE: typeParameterOfTopFunction.kt
|
||||
public? final? [TYPES] fun <resolveMe> ddd(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: typeParameterOfTopFunction.kt
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun <resolveMe> ddd(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: typeParameterOfTopFunction.kt
|
||||
public final [STATUS] fun <resolveMe> ddd(): R|kotlin/Unit| {
|
||||
@@ -55,7 +60,7 @@ FILE: typeParameterOfTopFunction.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: typeParameterOfTopFunction.kt
|
||||
public final [BODY_RESOLVE] fun <resolveMe> ddd(): R|kotlin/Unit| {
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] fun <resolveMe> ddd(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
DeclarationStatus:
|
||||
|
||||
Vendored
+12
-4
@@ -30,6 +30,14 @@ FILE: typeParameterOfTopSetter.kt
|
||||
^ Unit#
|
||||
}
|
||||
|
||||
ARGUMENTS_OF_ANNOTATIONS:
|
||||
FILE: typeParameterOfTopSetter.kt
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] var x: R|kotlin/Int| = IntegerLiteral(2)
|
||||
[TYPES] public? get(): R|kotlin/Int|
|
||||
[ARGUMENTS_OF_ANNOTATIONS] public? set([RAW_FIR] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Unit#
|
||||
}
|
||||
|
||||
STATUS:
|
||||
FILE: typeParameterOfTopSetter.kt
|
||||
public final [STATUS] var x: R|kotlin/Int| = IntegerLiteral(2)
|
||||
@@ -104,10 +112,10 @@ FILE: typeParameterOfTopSetter.kt
|
||||
|
||||
AnnotationsArguments:
|
||||
FILE: typeParameterOfTopSetter.kt
|
||||
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
|
||||
[BODY_RESOLVE] public get(): R|kotlin/Int|
|
||||
[BODY_RESOLVE] public set([BODY_RESOLVE] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Q|kotlin/Unit|
|
||||
public? final? [ARGUMENTS_OF_ANNOTATIONS] var x: R|kotlin/Int| = IntegerLiteral(2)
|
||||
[TYPES] public? get(): R|kotlin/Int|
|
||||
[ARGUMENTS_OF_ANNOTATIONS] public? set([RAW_FIR] resolveMe: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
^ Unit#
|
||||
}
|
||||
|
||||
CallableContracts:
|
||||
|
||||
+6
@@ -24,6 +24,12 @@ public class FirLazyDeclarationResolveTestGenerated extends AbstractFirLazyDecla
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("idea/idea-frontend-fir/idea-fir-low-level-api/testdata/lazyResolve"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("annotationParameters.kt")
|
||||
public void testAnnotationParameters() throws Exception {
|
||||
runTest("idea/idea-frontend-fir/idea-fir-low-level-api/testdata/lazyResolve/annotationParameters.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("annotations.kt")
|
||||
public void testAnnotations() throws Exception {
|
||||
|
||||
Reference in New Issue
Block a user