[LL API] Fix enum value lazy analysis (KTIJ-23833)
^KTIJ-23833 Fixed
This commit is contained in:
+3
-1
@@ -35,7 +35,9 @@ internal class LLFirDesignatedAnnotationArgumentsResolveTransformer(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
is FirRegularClass -> {
|
is FirRegularClass -> {
|
||||||
moveNextDeclaration(designationIterator)
|
context.withRegularClass(nextElement, components) {
|
||||||
|
moveNextDeclaration(designationIterator)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
is FirEnumEntry -> {
|
is FirEnumEntry -> {
|
||||||
context.forEnumEntry {
|
context.forEnumEntry {
|
||||||
|
|||||||
@@ -292,14 +292,14 @@ FILE: annotationParameters.kt
|
|||||||
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] get(): A.X
|
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] get(): A.X
|
||||||
|
|
||||||
}
|
}
|
||||||
public final [SUPER_TYPES] class B : R|kotlin/Any| {
|
public final [STATUS] class B : R|kotlin/Any| {
|
||||||
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
|
public [STATUS] [ContainingClassKey=B] constructor(): R|B| {
|
||||||
super<R|kotlin/Any|>()
|
super<R|kotlin/Any|>()
|
||||||
}
|
}
|
||||||
|
|
||||||
@R|Anno|(Q|X|.R|/X.A|) public final [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
|
@R|Anno|(Q|X|.R|/X.A|) public final [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
|
||||||
|
|
||||||
@Anno(X#.A#) public? final? [SUPER_TYPES] fun foo(): R|kotlin/Unit| { LAZY_BLOCK }
|
@R|Anno|(X#.A#) public final [STATUS] fun foo(): R|kotlin/Unit| { LAZY_BLOCK }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -330,15 +330,15 @@ FILE: annotationParameters.kt
|
|||||||
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] get(): A.X
|
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] get(): A.X
|
||||||
|
|
||||||
}
|
}
|
||||||
public final [SUPER_TYPES] class B : R|kotlin/Any| {
|
public final [STATUS] class B : R|kotlin/Any| {
|
||||||
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
|
public [STATUS] [ContainingClassKey=B] constructor(): R|B| {
|
||||||
super<R|kotlin/Any|>()
|
super<R|kotlin/Any|>()
|
||||||
}
|
}
|
||||||
|
|
||||||
@R|Anno|(Q|X|.R|/X.A|) public final [CONTRACTS] fun resolveMe(): R|kotlin/Unit| {
|
@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| { LAZY_BLOCK }
|
@R|Anno|(X#.A#) public final [STATUS] fun foo(): R|kotlin/Unit| { LAZY_BLOCK }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -127,26 +127,26 @@ FILE: classMembers.kt
|
|||||||
|
|
||||||
ARGUMENTS_OF_ANNOTATIONS:
|
ARGUMENTS_OF_ANNOTATIONS:
|
||||||
FILE: classMembers.kt
|
FILE: classMembers.kt
|
||||||
public final [SUPER_TYPES] class A : R|kotlin/Any| {
|
public final [STATUS] class A : R|kotlin/Any| {
|
||||||
public? [SUPER_TYPES] [ContainingClassKey=A] constructor(): R|A| {
|
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||||
super<R|kotlin/Any|>()
|
super<R|kotlin/Any|>()
|
||||||
}
|
}
|
||||||
|
|
||||||
public final [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
|
public final [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
|
||||||
|
|
||||||
public? final? [SUPER_TYPES] val x: Int = LAZY_EXPRESSION
|
public final [STATUS] val x: R|kotlin/Int| = LAZY_EXPRESSION
|
||||||
public? [SUPER_TYPES] [ContainingClassKey=A] get(): Int { LAZY_BLOCK }
|
public [STATUS] [ContainingClassKey=A] get(): R|kotlin/Int| { LAZY_BLOCK }
|
||||||
|
|
||||||
public? final? [SUPER_TYPES] fun receive([SUPER_TYPES] value: String): R|kotlin/Unit| { LAZY_BLOCK }
|
public final [STATUS] fun receive([STATUS] value: R|kotlin/String|): R|kotlin/Unit| { LAZY_BLOCK }
|
||||||
|
|
||||||
public? final? [SUPER_TYPES] fun functionWithLazyBody(): String { LAZY_BLOCK }
|
public final [STATUS] fun functionWithLazyBody(): R|kotlin/String| { LAZY_BLOCK }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
CONTRACTS:
|
CONTRACTS:
|
||||||
FILE: classMembers.kt
|
FILE: classMembers.kt
|
||||||
public final [SUPER_TYPES] class A : R|kotlin/Any| {
|
public final [STATUS] class A : R|kotlin/Any| {
|
||||||
public? [SUPER_TYPES] [ContainingClassKey=A] constructor(): R|A| {
|
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
|
||||||
super<R|kotlin/Any|>()
|
super<R|kotlin/Any|>()
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -154,12 +154,12 @@ FILE: classMembers.kt
|
|||||||
receive#(functionWithLazyBody#())
|
receive#(functionWithLazyBody#())
|
||||||
}
|
}
|
||||||
|
|
||||||
public? final? [SUPER_TYPES] val x: Int = LAZY_EXPRESSION
|
public final [STATUS] val x: R|kotlin/Int| = LAZY_EXPRESSION
|
||||||
public? [SUPER_TYPES] [ContainingClassKey=A] get(): Int { LAZY_BLOCK }
|
public [STATUS] [ContainingClassKey=A] get(): R|kotlin/Int| { LAZY_BLOCK }
|
||||||
|
|
||||||
public? final? [SUPER_TYPES] fun receive([SUPER_TYPES] value: String): R|kotlin/Unit| { LAZY_BLOCK }
|
public final [STATUS] fun receive([STATUS] value: R|kotlin/String|): R|kotlin/Unit| { LAZY_BLOCK }
|
||||||
|
|
||||||
public? final? [SUPER_TYPES] fun functionWithLazyBody(): String { LAZY_BLOCK }
|
public final [STATUS] fun functionWithLazyBody(): R|kotlin/String| { LAZY_BLOCK }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+8
-8
@@ -99,13 +99,13 @@ FILE: functionInValueClass.kt
|
|||||||
|
|
||||||
ARGUMENTS_OF_ANNOTATIONS:
|
ARGUMENTS_OF_ANNOTATIONS:
|
||||||
FILE: functionInValueClass.kt
|
FILE: functionInValueClass.kt
|
||||||
@R|kotlin/jvm/JvmInline|() public final inline [SUPER_TYPES] [FirValueClassRepresentationKey=InlineClassRepresentation(underlyingPropertyName=value, underlyingType=kotlin/Int)] class Value : R|kotlin/Any| {
|
@R|kotlin/jvm/JvmInline|() public final inline [STATUS] [FirValueClassRepresentationKey=InlineClassRepresentation(underlyingPropertyName=value, underlyingType=kotlin/Int)] class Value : R|kotlin/Any| {
|
||||||
public? [TYPES] [ContainingClassKey=Value] constructor([TYPES] [CorrespondingProperty=/Value.value] value: R|kotlin/Int|): R|Value| {
|
public [STATUS] [ContainingClassKey=Value] constructor([STATUS] [CorrespondingProperty=/Value.value] value: R|kotlin/Int|): R|Value| {
|
||||||
LAZY_super<R|kotlin/Any|>
|
LAZY_super<R|kotlin/Any|>
|
||||||
}
|
}
|
||||||
|
|
||||||
public? final? [SUPER_TYPES] [IsFromPrimaryConstructor=true] val value: Int = R|<local>/value|
|
public final [STATUS] [IsFromPrimaryConstructor=true] val value: R|kotlin/Int| = R|<local>/value|
|
||||||
public? [SUPER_TYPES] [ContainingClassKey=Value] get(): Int
|
public [STATUS] [ContainingClassKey=Value] get(): R|kotlin/Int|
|
||||||
|
|
||||||
public final [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
|
public final [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
|
||||||
|
|
||||||
@@ -113,13 +113,13 @@ FILE: functionInValueClass.kt
|
|||||||
|
|
||||||
CONTRACTS:
|
CONTRACTS:
|
||||||
FILE: functionInValueClass.kt
|
FILE: functionInValueClass.kt
|
||||||
@R|kotlin/jvm/JvmInline|() public final inline [SUPER_TYPES] [FirValueClassRepresentationKey=InlineClassRepresentation(underlyingPropertyName=value, underlyingType=kotlin/Int)] class Value : R|kotlin/Any| {
|
@R|kotlin/jvm/JvmInline|() public final inline [STATUS] [FirValueClassRepresentationKey=InlineClassRepresentation(underlyingPropertyName=value, underlyingType=kotlin/Int)] class Value : R|kotlin/Any| {
|
||||||
public? [TYPES] [ContainingClassKey=Value] constructor([TYPES] [CorrespondingProperty=/Value.value] value: R|kotlin/Int|): R|Value| {
|
public [STATUS] [ContainingClassKey=Value] constructor([STATUS] [CorrespondingProperty=/Value.value] value: R|kotlin/Int|): R|Value| {
|
||||||
LAZY_super<R|kotlin/Any|>
|
LAZY_super<R|kotlin/Any|>
|
||||||
}
|
}
|
||||||
|
|
||||||
public? final? [SUPER_TYPES] [IsFromPrimaryConstructor=true] val value: Int = R|<local>/value|
|
public final [STATUS] [IsFromPrimaryConstructor=true] val value: R|kotlin/Int| = R|<local>/value|
|
||||||
public? [SUPER_TYPES] [ContainingClassKey=Value] get(): Int
|
public [STATUS] [ContainingClassKey=Value] get(): R|kotlin/Int|
|
||||||
|
|
||||||
public final [CONTRACTS] fun resolveMe(): R|kotlin/Unit| {
|
public final [CONTRACTS] fun resolveMe(): R|kotlin/Unit| {
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
annotation class Anno
|
||||||
|
|
||||||
|
enum class Foo {
|
||||||
|
@Anno
|
||||||
|
ResolveMe
|
||||||
|
}
|
||||||
@@ -0,0 +1,385 @@
|
|||||||
|
RAW_FIR:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public? [RAW_FIR] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public? final? [RAW_FIR] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [RAW_FIR] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@Anno() public final static [RAW_FIR] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] fun valueOf([RAW_FIR] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [RAW_FIR] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
IMPORTS:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public? [RAW_FIR] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public? final? [RAW_FIR] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [RAW_FIR] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@Anno() public final static [RAW_FIR] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] fun valueOf([RAW_FIR] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [RAW_FIR] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
COMPILER_REQUIRED_ANNOTATIONS:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public? [RAW_FIR] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public? final? [RAW_FIR] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [RAW_FIR] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@Anno() public final static [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] fun valueOf([RAW_FIR] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [RAW_FIR] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
COMPANION_GENERATION:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public? [RAW_FIR] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public? final? [RAW_FIR] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [RAW_FIR] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@Anno() public final static [COMPANION_GENERATION] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] fun valueOf([RAW_FIR] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [RAW_FIR] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
SUPER_TYPES:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public? [RAW_FIR] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public? final? [RAW_FIR] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [RAW_FIR] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@Anno() public final static [SUPER_TYPES] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] fun valueOf([RAW_FIR] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [RAW_FIR] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [RAW_FIR] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
TYPES:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public? final? [COMPILER_REQUIRED_ANNOTATIONS] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public? final? [SUPER_TYPES] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [SUPER_TYPES] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@R|Anno|() public final static [TYPES] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
|
||||||
|
public final static [SUPER_TYPES] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [SUPER_TYPES] [ContainingClassKey=Foo] fun valueOf([SUPER_TYPES] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [SUPER_TYPES] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [SUPER_TYPES] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
STATUS:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public? final? [COMPILER_REQUIRED_ANNOTATIONS] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public final [SUPER_TYPES] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [SUPER_TYPES] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@R|Anno|() public final static [STATUS] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
|
||||||
|
public final static [SUPER_TYPES] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [SUPER_TYPES] [ContainingClassKey=Foo] fun valueOf([SUPER_TYPES] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [SUPER_TYPES] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [SUPER_TYPES] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ARGUMENTS_OF_ANNOTATIONS:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public? final? [COMPILER_REQUIRED_ANNOTATIONS] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public final [STATUS] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [STATUS] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@R|Anno|() public final static [ARGUMENTS_OF_ANNOTATIONS] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] fun valueOf([STATUS] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [STATUS] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
CONTRACTS:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public? final? [COMPILER_REQUIRED_ANNOTATIONS] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public final [STATUS] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [STATUS] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@R|Anno|() public final static [CONTRACTS] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = object : R|Foo| {
|
||||||
|
private [RAW_FIR] [ContainingClassKey=<anonymous>] constructor(): R|<anonymous>| {
|
||||||
|
super<R|Foo|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] fun valueOf([STATUS] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [STATUS] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
IMPLICIT_TYPES_BODY_RESOLVE:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public? final? [COMPILER_REQUIRED_ANNOTATIONS] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public final [STATUS] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [STATUS] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@R|Anno|() public final static [IMPLICIT_TYPES_BODY_RESOLVE] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = object : R|Foo| {
|
||||||
|
private [RAW_FIR] [ContainingClassKey=<anonymous>] constructor(): R|<anonymous>| {
|
||||||
|
super<R|Foo|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] fun valueOf([STATUS] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [STATUS] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ANNOTATIONS_ARGUMENTS_MAPPING:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public final [SUPER_TYPES] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public [STATUS] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public final [STATUS] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [STATUS] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@R|Anno|() public final static [ANNOTATIONS_ARGUMENTS_MAPPING] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = object : R|Foo| {
|
||||||
|
private [RAW_FIR] [ContainingClassKey=<anonymous>] constructor(): R|<anonymous>| {
|
||||||
|
super<R|Foo|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] fun valueOf([STATUS] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [STATUS] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
EXPECT_ACTUAL_MATCHING:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public final [SUPER_TYPES] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public [STATUS] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public final [STATUS] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [STATUS] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@R|Anno|() public final static [EXPECT_ACTUAL_MATCHING] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = object : R|Foo| {
|
||||||
|
private [RAW_FIR] [ContainingClassKey=<anonymous>] constructor(): R|<anonymous>| {
|
||||||
|
super<R|Foo|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] fun valueOf([STATUS] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [STATUS] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
BODY_RESOLVE:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public final [SUPER_TYPES] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public [STATUS] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public final [STATUS] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [STATUS] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@R|Anno|() public final static [BODY_RESOLVE] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = object : R|Foo| {
|
||||||
|
private [BODY_RESOLVE] [ContainingClassKey=<anonymous>] constructor(): R|<anonymous>| {
|
||||||
|
super<R|Foo|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] fun valueOf([STATUS] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [STATUS] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [STATUS] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
FILE RAW TO BODY:
|
||||||
|
FILE: enumEntry.kt
|
||||||
|
public final [BODY_RESOLVE] annotation class Anno : R|kotlin/Annotation| {
|
||||||
|
public [BODY_RESOLVE] [ContainingClassKey=Anno] constructor(): R|Anno| {
|
||||||
|
super<R|kotlin/Any|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public final [BODY_RESOLVE] enum class Foo : R|kotlin/Enum<Foo>| {
|
||||||
|
private [BODY_RESOLVE] [ContainingClassKey=Foo] constructor(): R|Foo| {
|
||||||
|
super<R|kotlin/Enum<Foo>|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
@R|Anno|() public final static [BODY_RESOLVE] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = object : R|Foo| {
|
||||||
|
private [BODY_RESOLVE] [ContainingClassKey=<anonymous>] constructor(): R|<anonymous>| {
|
||||||
|
super<R|Foo|>()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [BODY_RESOLVE] [ContainingClassKey=Foo] fun values(): R|kotlin/Array<Foo>| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [BODY_RESOLVE] [ContainingClassKey=Foo] fun valueOf([BODY_RESOLVE] value: R|kotlin/String|): R|Foo| {
|
||||||
|
}
|
||||||
|
|
||||||
|
public final static [BODY_RESOLVE] [ContainingClassKey=Foo] val entries: R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
public [BODY_RESOLVE] get(): R|kotlin/enums/EnumEntries<Foo>|
|
||||||
|
|
||||||
|
}
|
||||||
+4
-4
@@ -92,8 +92,8 @@ FILE: parameterOfNonLocalSetter.kt
|
|||||||
|
|
||||||
ARGUMENTS_OF_ANNOTATIONS:
|
ARGUMENTS_OF_ANNOTATIONS:
|
||||||
FILE: parameterOfNonLocalSetter.kt
|
FILE: parameterOfNonLocalSetter.kt
|
||||||
public final [SUPER_TYPES] class X : R|kotlin/Any| {
|
public final [STATUS] class X : R|kotlin/Any| {
|
||||||
public? [SUPER_TYPES] [ContainingClassKey=X] constructor(): R|X| {
|
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||||
super<R|kotlin/Any|>()
|
super<R|kotlin/Any|>()
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -105,8 +105,8 @@ FILE: parameterOfNonLocalSetter.kt
|
|||||||
|
|
||||||
CONTRACTS:
|
CONTRACTS:
|
||||||
FILE: parameterOfNonLocalSetter.kt
|
FILE: parameterOfNonLocalSetter.kt
|
||||||
public final [SUPER_TYPES] class X : R|kotlin/Any| {
|
public final [STATUS] class X : R|kotlin/Any| {
|
||||||
public? [SUPER_TYPES] [ContainingClassKey=X] constructor(): R|X| {
|
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||||
super<R|kotlin/Any|>()
|
super<R|kotlin/Any|>()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+4
-4
@@ -78,8 +78,8 @@ FILE: typeParameterOfNonLocalFunction.kt
|
|||||||
|
|
||||||
ARGUMENTS_OF_ANNOTATIONS:
|
ARGUMENTS_OF_ANNOTATIONS:
|
||||||
FILE: typeParameterOfNonLocalFunction.kt
|
FILE: typeParameterOfNonLocalFunction.kt
|
||||||
public final [SUPER_TYPES] class X : R|kotlin/Any| {
|
public final [STATUS] class X : R|kotlin/Any| {
|
||||||
public? [SUPER_TYPES] [ContainingClassKey=X] constructor(): R|X| {
|
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||||
super<R|kotlin/Any|>()
|
super<R|kotlin/Any|>()
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -89,8 +89,8 @@ FILE: typeParameterOfNonLocalFunction.kt
|
|||||||
|
|
||||||
CONTRACTS:
|
CONTRACTS:
|
||||||
FILE: typeParameterOfNonLocalFunction.kt
|
FILE: typeParameterOfNonLocalFunction.kt
|
||||||
public final [SUPER_TYPES] class X : R|kotlin/Any| {
|
public final [STATUS] class X : R|kotlin/Any| {
|
||||||
public? [SUPER_TYPES] [ContainingClassKey=X] constructor(): R|X| {
|
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
|
||||||
super<R|kotlin/Any|>()
|
super<R|kotlin/Any|>()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+6
@@ -48,6 +48,12 @@ public class FirLazyDeclarationResolveTestGenerated extends AbstractFirLazyDecla
|
|||||||
runTest("analysis/low-level-api-fir/testdata/lazyResolve/delegates.kt");
|
runTest("analysis/low-level-api-fir/testdata/lazyResolve/delegates.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@TestMetadata("enumEntry.kt")
|
||||||
|
public void testEnumEntry() throws Exception {
|
||||||
|
runTest("analysis/low-level-api-fir/testdata/lazyResolve/enumEntry.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@TestMetadata("functionWithParameter.kt")
|
@TestMetadata("functionWithParameter.kt")
|
||||||
public void testFunctionWithParameter() throws Exception {
|
public void testFunctionWithParameter() throws Exception {
|
||||||
|
|||||||
Reference in New Issue
Block a user