Migrate to FirEnumEntry
This commit is contained in:
committed by
Mikhail Glukhikh
parent
5b5a5292b7
commit
65a44e2e20
@@ -365,11 +365,11 @@ internal fun ConeKotlinType.lexicalCastFrom(session: FirSession, value: String):
|
||||
val firElement = lookupTag.toSymbol(session)?.fir
|
||||
if (firElement is FirRegularClass && firElement.classKind == ClassKind.ENUM_CLASS) {
|
||||
val name = Name.identifier(value)
|
||||
val firEnumEntry = firElement.collectEnumEntries().find { it.callableId.callableName == name }
|
||||
val firEnumEntry = firElement.collectEnumEntries().find { it.name == name }
|
||||
|
||||
return if (firEnumEntry != null) FirQualifiedAccessExpressionImpl(null).apply {
|
||||
calleeReference = FirResolvedNamedReferenceImpl(
|
||||
null, name, firEnumEntry
|
||||
null, name, firEnumEntry.symbol
|
||||
)
|
||||
} else if (firElement is FirJavaClass) {
|
||||
val firStaticProperty = firElement.declarations.filterIsInstance<FirJavaField>().find {
|
||||
|
||||
+3
-7
@@ -515,7 +515,7 @@ class DeclarationsConverter(
|
||||
/**
|
||||
* @see org.jetbrains.kotlin.parsing.KotlinParsing.parseEnumEntry
|
||||
*/
|
||||
private fun convertEnumEntry(enumEntry: LighterASTNode, classWrapper: ClassWrapper): FirProperty {
|
||||
private fun convertEnumEntry(enumEntry: LighterASTNode, classWrapper: ClassWrapper): FirEnumEntry {
|
||||
var modifiers = Modifier()
|
||||
lateinit var identifier: String
|
||||
var hasInitializerList = false
|
||||
@@ -534,11 +534,10 @@ class DeclarationsConverter(
|
||||
}
|
||||
|
||||
val enumEntryName = identifier.nameAsSafeName()
|
||||
return FirPropertyImpl(
|
||||
return FirEnumEntryImpl(
|
||||
null,
|
||||
session,
|
||||
classWrapper.delegatedSelfTypeRef,
|
||||
receiverTypeRef = null,
|
||||
name = enumEntryName,
|
||||
initializer = FirAnonymousObjectImpl(
|
||||
null,
|
||||
@@ -566,10 +565,7 @@ class DeclarationsConverter(
|
||||
convertPrimaryConstructor(null, enumClassWrapper)?.let { declarations += it.firConstructor }
|
||||
classBodyNode?.also { declarations += convertClassBody(it, enumClassWrapper) }
|
||||
},
|
||||
delegate = null,
|
||||
isVar = false,
|
||||
symbol = FirPropertySymbol(CallableId(context.currentClassId, enumEntryName)),
|
||||
isLocal = false,
|
||||
symbol = FirVariableSymbol(CallableId(context.currentClassId, enumEntryName)),
|
||||
status = FirDeclarationStatusImpl(Visibilities.PUBLIC, Modality.FINAL).apply {
|
||||
isStatic = true
|
||||
}
|
||||
|
||||
@@ -486,22 +486,18 @@ class RawFirBuilder(session: FirSession, val scopeProvider: FirScopeProvider, va
|
||||
)
|
||||
}
|
||||
|
||||
return FirPropertyImpl(
|
||||
return FirEnumEntryImpl(
|
||||
source = toFirSourceElement(),
|
||||
session,
|
||||
delegatedEnumSelfTypeRef,
|
||||
receiverTypeRef = null,
|
||||
name = nameAsSafeName,
|
||||
initializer = obj,
|
||||
delegate = null,
|
||||
isVar = false,
|
||||
isLocal = false,
|
||||
status = FirDeclarationStatusImpl(
|
||||
Visibilities.PUBLIC, Modality.FINAL
|
||||
).apply {
|
||||
isStatic = true
|
||||
},
|
||||
symbol = FirPropertySymbol(callableIdForName(nameAsSafeName))
|
||||
symbol = FirVariableSymbol(callableIdForName(nameAsSafeName))
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -140,9 +140,9 @@ abstract class AbstractAnnotationDeserializer(
|
||||
val enumSymbol = enumLookupTag.toSymbol(this@AbstractAnnotationDeserializer.session)
|
||||
val firClass = enumSymbol?.fir as? FirRegularClass
|
||||
val enumEntries = firClass?.collectEnumEntries() ?: emptyList()
|
||||
val enumEntrySymbol = enumEntries.find { it.callableId.callableName == entryName }
|
||||
val enumEntrySymbol = enumEntries.find { it.name == entryName }
|
||||
this.calleeReference = enumEntrySymbol?.let {
|
||||
FirResolvedNamedReferenceImpl(null, entryName, it)
|
||||
FirResolvedNamedReferenceImpl(null, entryName, it.symbol)
|
||||
} ?: FirErrorNamedReferenceImpl(
|
||||
null,
|
||||
FirSimpleDiagnostic("Strange deserialized enum value: $classId.$entryName", DiagnosticKind.DeserializationError)
|
||||
|
||||
+4
-18
@@ -18,10 +18,7 @@ import org.jetbrains.kotlin.fir.declarations.impl.FirSealedClassImpl
|
||||
import org.jetbrains.kotlin.fir.scopes.KotlinScopeProvider
|
||||
import org.jetbrains.kotlin.fir.declarations.impl.*
|
||||
import org.jetbrains.kotlin.fir.symbols.CallableId
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.ConeClassLikeLookupTagImpl
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirAnonymousObjectSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirPropertySymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirRegularClassSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.*
|
||||
import org.jetbrains.kotlin.fir.types.impl.ConeClassLikeTypeImpl
|
||||
import org.jetbrains.kotlin.fir.types.impl.FirResolvedTypeRefImpl
|
||||
import org.jetbrains.kotlin.metadata.ProtoBuf
|
||||
@@ -129,24 +126,13 @@ fun deserializeClassToSymbol(
|
||||
val enumEntryName = nameResolver.getName(enumEntryProto.name)
|
||||
|
||||
val enumType = ConeClassLikeTypeImpl(symbol.toLookupTag(), emptyArray(), false)
|
||||
val property = FirPropertyImpl(
|
||||
val property = FirEnumEntryImpl(
|
||||
null,
|
||||
session,
|
||||
FirResolvedTypeRefImpl(null, enumType),
|
||||
null,
|
||||
enumEntryName,
|
||||
initializer = FirAnonymousObjectImpl(
|
||||
null,
|
||||
session,
|
||||
classKind = ClassKind.ENUM_ENTRY,
|
||||
symbol = FirAnonymousObjectSymbol()
|
||||
).apply {
|
||||
superTypeRefs += FirResolvedTypeRefImpl(source = null, type = enumType)
|
||||
},
|
||||
delegate = null,
|
||||
isVar = false,
|
||||
symbol = FirPropertySymbol(CallableId(classId, enumEntryName)),
|
||||
isLocal = false,
|
||||
initializer = null,
|
||||
symbol = FirVariableSymbol(CallableId(classId, enumEntryName)),
|
||||
status = FirDeclarationStatusImpl(Visibilities.PUBLIC, Modality.FINAL).apply {
|
||||
isStatic = true
|
||||
}
|
||||
|
||||
@@ -107,6 +107,10 @@ class FirProviderImpl(val session: FirSession, val kotlinScopeProvider: KotlinSc
|
||||
override fun visitProperty(property: FirProperty) {
|
||||
visitCallableDeclaration(property)
|
||||
}
|
||||
|
||||
override fun visitEnumEntry(enumEntry: FirEnumEntry) {
|
||||
visitCallableDeclaration(enumEntry)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
+6
-5
@@ -19,6 +19,7 @@ import org.jetbrains.kotlin.fir.resolve.toSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.ConeClassLikeLookupTag
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirClassSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirPropertySymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirVariableSymbol
|
||||
import org.jetbrains.kotlin.fir.types.ConeLookupTagBasedType
|
||||
import org.jetbrains.kotlin.fir.types.ConeNullability
|
||||
import org.jetbrains.kotlin.fir.types.FirResolvedTypeRef
|
||||
@@ -74,7 +75,7 @@ class FirWhenExhaustivenessTransformer(private val bodyResolveComponents: BodyRe
|
||||
|
||||
private fun checkEnumExhaustiveness(whenExpression: FirWhenExpression, enum: FirRegularClass, nullable: Boolean): Boolean {
|
||||
val data = EnumExhaustivenessData(
|
||||
enum.collectEnumEntries().toMutableSet(),
|
||||
enum.collectEnumEntries().map { it.symbol }.toMutableSet(),
|
||||
!nullable
|
||||
)
|
||||
for (branch in whenExpression.branches) {
|
||||
@@ -83,7 +84,7 @@ class FirWhenExhaustivenessTransformer(private val bodyResolveComponents: BodyRe
|
||||
return data.containsNull && data.remainingEntries.isEmpty()
|
||||
}
|
||||
|
||||
private class EnumExhaustivenessData(val remainingEntries: MutableSet<FirPropertySymbol>, var containsNull: Boolean)
|
||||
private class EnumExhaustivenessData(val remainingEntries: MutableSet<FirVariableSymbol<FirEnumEntry>>, var containsNull: Boolean)
|
||||
|
||||
private object EnumExhaustivenessVisitor : FirVisitor<Unit, EnumExhaustivenessData>() {
|
||||
override fun visitElement(element: FirElement, data: EnumExhaustivenessData) {}
|
||||
@@ -98,9 +99,9 @@ class FirWhenExhaustivenessTransformer(private val bodyResolveComponents: BodyRe
|
||||
}
|
||||
is FirQualifiedAccessExpression -> {
|
||||
val reference = argument.calleeReference as? FirResolvedNamedReference ?: return
|
||||
val symbol = reference.resolvedSymbol
|
||||
if (symbol is FirPropertySymbol)
|
||||
data.remainingEntries.remove(symbol)
|
||||
val symbol = (reference.resolvedSymbol.fir as? FirEnumEntry)?.symbol ?: return
|
||||
|
||||
data.remainingEntries.remove(symbol)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+3
-15
@@ -365,21 +365,9 @@ public abstract interface Comparable<in T> : R|kotlin/Any| {
|
||||
public final enum class DeprecationLevel : R|kotlin/Enum<kotlin/DeprecationLevel>| {
|
||||
private constructor(): R|kotlin/DeprecationLevel|
|
||||
|
||||
public final static val WARNING: R|kotlin/DeprecationLevel| = object : R|kotlin/DeprecationLevel| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val ERROR: R|kotlin/DeprecationLevel| = object : R|kotlin/DeprecationLevel| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val HIDDEN: R|kotlin/DeprecationLevel| = object : R|kotlin/DeprecationLevel| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry WARNING: R|kotlin/DeprecationLevel|
|
||||
public final static enum entry ERROR: R|kotlin/DeprecationLevel|
|
||||
public final static enum entry HIDDEN: R|kotlin/DeprecationLevel|
|
||||
}
|
||||
|
||||
public final class Double : R|kotlin/Number|, R|kotlin/Comparable<kotlin/Double>| {
|
||||
|
||||
Vendored
+1
-5
@@ -6,11 +6,7 @@
|
||||
public final enum class E : R|kotlin/Enum<test/E>| {
|
||||
private constructor(): R|test/E|
|
||||
|
||||
public final static val ENTRY: R|test/E| = object : R|test/E| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry ENTRY: R|test/E|
|
||||
}
|
||||
|
||||
public final annotation class EnumOption : R|kotlin/Annotation| {
|
||||
|
||||
Vendored
+1
-5
@@ -1,11 +1,7 @@
|
||||
public final enum class E : R|kotlin/Enum<test/E>| {
|
||||
private constructor(): R|test/E|
|
||||
|
||||
public final static val CAKE: R|test/E| = object : R|test/E| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry CAKE: R|test/E|
|
||||
}
|
||||
|
||||
public final annotation class EnumAnno : R|kotlin/Annotation| {
|
||||
|
||||
+4
-20
@@ -17,25 +17,9 @@ public final annotation class Bnno : R|kotlin/Annotation| {
|
||||
public final enum class Eee : R|kotlin/Enum<test/Eee>| {
|
||||
private constructor(): R|test/Eee|
|
||||
|
||||
public final static val Entry1: R|test/Eee| = object : R|test/Eee| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val Entry2: R|test/Eee| = object : R|test/Eee| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val Entry3: R|test/Eee| = object : R|test/Eee| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val Entry4: R|test/Eee| = object : R|test/Eee| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry Entry1: R|test/Eee|
|
||||
public final static enum entry Entry2: R|test/Eee|
|
||||
public final static enum entry Entry3: R|test/Eee|
|
||||
public final static enum entry Entry4: R|test/Eee|
|
||||
}
|
||||
|
||||
|
||||
@@ -1,30 +1,18 @@
|
||||
internal final enum class In : R|kotlin/Enum<test/In>| {
|
||||
private constructor(): R|test/In|
|
||||
|
||||
public final static val A: R|test/In| = object : R|test/In| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry A: R|test/In|
|
||||
}
|
||||
|
||||
private final enum class Pr : R|kotlin/Enum<test/Pr>| {
|
||||
private constructor(): R|test/Pr|
|
||||
|
||||
public final static val A: R|test/Pr| = object : R|test/Pr| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry A: R|test/Pr|
|
||||
}
|
||||
|
||||
public final enum class Pu : R|kotlin/Enum<test/Pu>| {
|
||||
private constructor(): R|test/Pu|
|
||||
|
||||
public final static val A: R|test/Pu| = object : R|test/Pu| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry A: R|test/Pu|
|
||||
}
|
||||
|
||||
|
||||
+3
-15
@@ -7,20 +7,8 @@ public final enum class En : R|kotlin/Enum<test/En>| {
|
||||
|
||||
private constructor(b: R|kotlin/Boolean| = STUB, i: R|kotlin/Int| = STUB): R|test/En|
|
||||
|
||||
public final static val E1: R|test/En| = object : R|test/En| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val E2: R|test/En| = object : R|test/En| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val E3: R|test/En| = object : R|test/En| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry E1: R|test/En|
|
||||
public final static enum entry E2: R|test/En|
|
||||
public final static enum entry E3: R|test/En|
|
||||
}
|
||||
|
||||
|
||||
+2
-10
@@ -19,15 +19,7 @@ public final enum class Enum : R|kotlin/Enum<test/Enum>| {
|
||||
public abstract interface Trait : R|kotlin/Any| {
|
||||
}
|
||||
|
||||
public final static val ENTRY1: R|test/Enum| = object : R|test/Enum| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val ENTRY2: R|test/Enum| = object : R|test/Enum| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry ENTRY1: R|test/Enum|
|
||||
public final static enum entry ENTRY2: R|test/Enum|
|
||||
}
|
||||
|
||||
|
||||
@@ -4,11 +4,7 @@ public final class A : R|kotlin/Any| {
|
||||
public final enum class E : R|kotlin/Enum<test/A.E>| {
|
||||
private constructor(): R|test/A.E|
|
||||
|
||||
public final static val ENTRY: R|test/A.E| = object : R|test/A.E| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry ENTRY: R|test/A.E|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+1
-5
@@ -9,11 +9,7 @@ public final class A : R|kotlin/Any| {
|
||||
public final enum class E : R|kotlin/Enum<test/A.E>| {
|
||||
private constructor(): R|test/A.E|
|
||||
|
||||
public final static val ENTRY: R|test/A.E| = object : R|test/A.E| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry ENTRY: R|test/A.E|
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
public final enum class MyEnum : R|kotlin/Enum<test/MyEnum>| {
|
||||
private constructor(): R|test/MyEnum|
|
||||
|
||||
public final static val ENTRY: R|test/MyEnum| = object : R|test/MyEnum| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry ENTRY: R|test/MyEnum|
|
||||
}
|
||||
|
||||
|
||||
@@ -1,15 +1,7 @@
|
||||
public final enum class Test : R|kotlin/Enum<test/Test>| {
|
||||
private constructor(a: R|kotlin/Int|): R|test/Test|
|
||||
|
||||
public final static val A: R|test/Test| = object : R|test/Test| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val B: R|test/Test| = object : R|test/Test| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry A: R|test/Test|
|
||||
public final static enum entry B: R|test/Test|
|
||||
}
|
||||
|
||||
|
||||
+8
-40
@@ -1,45 +1,13 @@
|
||||
public final enum class E : R|kotlin/Enum<test/E>| {
|
||||
private constructor(): R|test/E|
|
||||
|
||||
public final static val ONE: R|test/E| = object : R|test/E| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val TWO: R|test/E| = object : R|test/E| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val THREE: R|test/E| = object : R|test/E| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val FOUR: R|test/E| = object : R|test/E| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val FIVE: R|test/E| = object : R|test/E| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val SIX: R|test/E| = object : R|test/E| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val SEVEN: R|test/E| = object : R|test/E| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val EIGHT: R|test/E| = object : R|test/E| {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static enum entry ONE: R|test/E|
|
||||
public final static enum entry TWO: R|test/E|
|
||||
public final static enum entry THREE: R|test/E|
|
||||
public final static enum entry FOUR: R|test/E|
|
||||
public final static enum entry FIVE: R|test/E|
|
||||
public final static enum entry SIX: R|test/E|
|
||||
public final static enum entry SEVEN: R|test/E|
|
||||
public final static enum entry EIGHT: R|test/E|
|
||||
}
|
||||
|
||||
|
||||
+2
-6
@@ -21,7 +21,7 @@ FILE: enum.kt
|
||||
public final val x: R|Some| = R|<local>/x|
|
||||
public get(): R|Some|
|
||||
|
||||
public final static val FIRST: R|SomeEnum| = object : R|SomeEnum| {
|
||||
public final static enum entry FIRST: R|SomeEnum| = object : R|SomeEnum| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|SomeEnum|>(Q|O1|)
|
||||
}
|
||||
@@ -32,9 +32,7 @@ FILE: enum.kt
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val SECOND: R|SomeEnum| = object : R|SomeEnum| {
|
||||
public final static enum entry SECOND: R|SomeEnum| = object : R|SomeEnum| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|SomeEnum|>(Q|O2|)
|
||||
}
|
||||
@@ -45,8 +43,6 @@ FILE: enum.kt
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public abstract fun check(y: R|Some|): R|kotlin/Boolean|
|
||||
|
||||
public final static fun values(): R|kotlin/Array<SomeEnum>| {
|
||||
|
||||
@@ -4,24 +4,20 @@ FILE: enumWithCompanion.kt
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final static val A: R|EC| = object : R|EC| {
|
||||
public final static enum entry A: R|EC| = object : R|EC| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|EC|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val B: R|EC| = object : R|EC| {
|
||||
public final static enum entry B: R|EC| = object : R|EC| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|EC|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final companion object Companion : R|kotlin/Any| {
|
||||
private constructor(): R|EC.Companion| {
|
||||
super<R|kotlin/Any|>()
|
||||
|
||||
@@ -4,33 +4,27 @@ FILE: exhaustiveness_enum.kt
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final static val A: R|Enum| = object : R|Enum| {
|
||||
public final static enum entry A: R|Enum| = object : R|Enum| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|Enum|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val B: R|Enum| = object : R|Enum| {
|
||||
public final static enum entry B: R|Enum| = object : R|Enum| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|Enum|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val C: R|Enum| = object : R|Enum| {
|
||||
public final static enum entry C: R|Enum| = object : R|Enum| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|Enum|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static fun values(): R|kotlin/Array<Enum>| {
|
||||
}
|
||||
|
||||
|
||||
@@ -4,33 +4,27 @@ FILE: enumValues.kt
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final static val FIRST: R|MyEnum| = object : R|MyEnum| {
|
||||
public final static enum entry FIRST: R|MyEnum| = object : R|MyEnum| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|MyEnum|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val SECOND: R|MyEnum| = object : R|MyEnum| {
|
||||
public final static enum entry SECOND: R|MyEnum| = object : R|MyEnum| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|MyEnum|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val LAST: R|MyEnum| = object : R|MyEnum| {
|
||||
public final static enum entry LAST: R|MyEnum| = object : R|MyEnum| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|MyEnum|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final fun bar(): R|kotlin/Int| {
|
||||
^bar Int(42)
|
||||
}
|
||||
|
||||
+1
-3
@@ -33,15 +33,13 @@ FILE: qualifiedExpressions.kt
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final static val entry: R|a/b/E| = object : R|a/b/E| {
|
||||
public final static enum entry entry: R|a/b/E| = object : R|a/b/E| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|a/b/E|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static fun values(): R|kotlin/Array<a/b/E>| {
|
||||
}
|
||||
|
||||
|
||||
+6
-18
@@ -4,33 +4,27 @@ FILE: enums.kt
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final static val FIRST: R|Order| = object : R|Order| {
|
||||
public final static enum entry FIRST: R|Order| = object : R|Order| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|Order|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val SECOND: R|Order| = object : R|Order| {
|
||||
public final static enum entry SECOND: R|Order| = object : R|Order| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|Order|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val THIRD: R|Order| = object : R|Order| {
|
||||
public final static enum entry THIRD: R|Order| = object : R|Order| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|Order|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static fun values(): R|kotlin/Array<Order>| {
|
||||
}
|
||||
|
||||
@@ -49,7 +43,7 @@ FILE: enums.kt
|
||||
internal final val r: R|kotlin/Double| = R|<local>/r|
|
||||
internal get(): R|kotlin/Double|
|
||||
|
||||
public final static val MERCURY: R|Planet| = object : R|Planet| {
|
||||
public final static enum entry MERCURY: R|Planet| = object : R|Planet| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|Planet|>(Double(1.0), Double(2.0))
|
||||
}
|
||||
@@ -60,9 +54,7 @@ FILE: enums.kt
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val VENERA: R|Planet| = object : R|Planet| {
|
||||
public final static enum entry VENERA: R|Planet| = object : R|Planet| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|Planet|>(Double(3.0), Double(4.0))
|
||||
}
|
||||
@@ -73,9 +65,7 @@ FILE: enums.kt
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final static val EARTH: R|Planet| = object : R|Planet| {
|
||||
public final static enum entry EARTH: R|Planet| = object : R|Planet| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|Planet|>(Double(5.0), Double(6.0))
|
||||
}
|
||||
@@ -86,8 +76,6 @@ FILE: enums.kt
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public final val g: R|kotlin/Double| = R|/Planet.Companion.G|.R|kotlin/Double.times|(R|<local>/m|).R|kotlin/Double.div|(R|<local>/r|.R|kotlin/Double.times|(R|<local>/r|))
|
||||
public get(): R|kotlin/Double|
|
||||
|
||||
|
||||
@@ -68,14 +68,7 @@ val FirClassSymbol<*>.superConeTypes
|
||||
|
||||
val FirClass<*>.superConeTypes get() = superTypeRefs.mapNotNull { it.coneTypeSafe<ConeClassLikeType>() }
|
||||
|
||||
fun FirRegularClass.collectEnumEntries(): Collection<FirPropertySymbol> {
|
||||
fun FirRegularClass.collectEnumEntries(): Collection<FirEnumEntry> {
|
||||
assert(classKind == ClassKind.ENUM_CLASS)
|
||||
return declarations
|
||||
.mapNotNull {
|
||||
if (it !is FirProperty) return@mapNotNull null
|
||||
val initializer = it.initializer
|
||||
if (initializer == null || initializer !is FirAnonymousObject || initializer.classKind != ClassKind.ENUM_ENTRY)
|
||||
return@mapNotNull null
|
||||
return@mapNotNull it.symbol
|
||||
}
|
||||
return declarations.filterIsInstance<FirEnumEntry>()
|
||||
}
|
||||
+110
-67
@@ -1,94 +1,137 @@
|
||||
FILE fqName:<root> fileName:/enumEntry.kt
|
||||
CLASS ENUM_CLASS name:Z modality:FINAL visibility:public superTypes:[kotlin.Enum<<root>.Z>]
|
||||
CLASS ENUM_CLASS name:Z modality:OPEN visibility:public superTypes:[kotlin.Enum<<root>.Z>]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Z
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Z [primary]
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Z [primary]h
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS ENUM_CLASS name:Z modality:FINAL visibility:public superTypes:[kotlin.Enum<<root>.Z>]'
|
||||
CLASS ENUM_ENTRY name:ENTRY modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Z.ENTRY
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.Z.ENTRY [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS ENUM_ENTRY name:ENTRY modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:test visibility:public modality:FINAL <> ($this:<root>.Z.ENTRY) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Z.ENTRY
|
||||
BLOCK_BODY
|
||||
CLASS CLASS name:A modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Z.ENTRY.A
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.Z.ENTRY.A [primary]
|
||||
ENUM_CONSTRUCTOR_CALL 'public constructor <init> (name: kotlin.String, ordinal: kotlin.Int) [primary] declared in kotlin.Enum'
|
||||
<E>: <root>.Z
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS ENUM_CLASS name:Z modality:OPEN visibility:public superTypes:[kotlin.Enum<<root>.Z>]'
|
||||
ENUM_ENTRY name:ENTRY
|
||||
init: ENUM_CONSTRUCTOR_CALL 'private constructor <init> () [primary] declared in <root>.Z.ENTRY'
|
||||
class: CLASS ENUM_ENTRY name:ENTRY modality:FINAL visibility:public superTypes:[<root>.Z]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Z.ENTRY
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Z.ENTRY [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]'
|
||||
FUN name:test2 visibility:public modality:FINAL <> ($this:<root>.Z.ENTRY.A) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Z.ENTRY.A
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
ENUM_CONSTRUCTOR_CALL 'private constructor <init> () [primary] declared in <root>.Z'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS ENUM_ENTRY name:ENTRY modality:FINAL visibility:public superTypes:[<root>.Z]'
|
||||
FUN name:test visibility:public modality:FINAL <> ($this:<root>.Z.ENTRY) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Z.ENTRY
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun test (): kotlin.Unit declared in <root>.Z.ENTRY' type=kotlin.Unit origin=null
|
||||
$this: GET_VAR '<this>: <root>.Z.ENTRY declared in <root>.Z.ENTRY' type=<root>.Z.ENTRY origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
CLASS CLASS name:A modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Z.ENTRY.A
|
||||
CONSTRUCTOR visibility:public <> ($this:<root>.Z.ENTRY) returnType:<root>.Z.ENTRY.A [primary]
|
||||
$outer: VALUE_PARAMETER name:<this> type:<root>.Z.ENTRY
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]'
|
||||
FUN name:test2 visibility:public modality:FINAL <> ($this:<root>.Z.ENTRY.A) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Z.ENTRY.A
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun test (): kotlin.Unit declared in <root>.Z.ENTRY' type=kotlin.Unit origin=null
|
||||
$this: GET_ENUM 'ENUM_ENTRY name:ENTRY' type=<root>.Z.ENTRY
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<<root>.Z>) returnType:kotlin.Any [fake_override]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
protected final fun clone (): kotlin.Any [fake_override] declared in <root>.Z
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<<root>.Z>) returnType:kotlin.Unit [fake_override]
|
||||
overridden:
|
||||
protected/*protected and package*/ final fun finalize (): kotlin.Unit [fake_override] declared in <root>.Z
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<<root>.Z>) returnType:java.lang.Class<<root>.Z?>? [fake_override]
|
||||
overridden:
|
||||
public final fun getDeclaringClass (): java.lang.Class<<root>.Z?>? [fake_override] declared in <root>.Z
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<<root>.Z>, other:<root>.Z) returnType:kotlin.Int [fake_override,operator]
|
||||
overridden:
|
||||
public final fun compareTo (other: <root>.Z): kotlin.Int [fake_override,operator] declared in <root>.Z
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
VALUE_PARAMETER name:other index:0 type:<root>.Z
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:FINAL <> ($this:kotlin.Enum<<root>.Z>, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public final fun equals (other: kotlin.Any?): kotlin.Boolean [fake_override,operator] declared in <root>.Z
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<<root>.Z>) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
public final fun hashCode (): kotlin.Int [fake_override] declared in <root>.Z
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
PROPERTY FAKE_OVERRIDE name:name visibility:public modality:FINAL [fake_override,val]
|
||||
FUN FAKE_OVERRIDE name:<get-name> visibility:public modality:FINAL <> ($this:kotlin.Enum<<root>.Z>) returnType:kotlin.String [fake_override]
|
||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:name visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final fun <get-name> (): kotlin.String [fake_override] declared in <root>.Z
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
PROPERTY FAKE_OVERRIDE name:ordinal visibility:public modality:FINAL [fake_override,val]
|
||||
FUN FAKE_OVERRIDE name:<get-ordinal> visibility:public modality:FINAL <> ($this:kotlin.Enum<<root>.Z>) returnType:kotlin.Int [fake_override]
|
||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:ordinal visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final fun <get-ordinal> (): kotlin.Int [fake_override] declared in <root>.Z
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Enum<<root>.Z>) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:values visibility:public modality:FINAL <> ($this:<root>.Z) returnType:kotlin.Array<<root>.Z>
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Z
|
||||
BLOCK_BODY
|
||||
FUN name:valueOf visibility:public modality:FINAL <> ($this:<root>.Z, value:kotlin.String) returnType:<root>.Z
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Z
|
||||
VALUE_PARAMETER name:value index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum) returnType:kotlin.Any [fake_override]
|
||||
public open fun toString (): kotlin.String [fake_override] declared in <root>.Z
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<<root>.Z>) returnType:kotlin.Any [fake_override]
|
||||
overridden:
|
||||
protected final fun clone (): kotlin.Any declared in kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum
|
||||
FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum, other:<root>.Z) returnType:kotlin.Int [fake_override,operator]
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<<root>.Z>) returnType:kotlin.Unit [fake_override]
|
||||
overridden:
|
||||
protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<<root>.Z>) returnType:java.lang.Class<<root>.Z?>? [fake_override]
|
||||
overridden:
|
||||
public final fun getDeclaringClass (): java.lang.Class<E of kotlin.Enum?>? declared in kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<<root>.Z>, other:<root>.Z) returnType:kotlin.Int [fake_override,operator]
|
||||
overridden:
|
||||
public final fun compareTo (other: E of kotlin.Enum): kotlin.Int [operator] declared in kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
VALUE_PARAMETER name:other index:0 type:<root>.Z
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:FINAL <> ($this:kotlin.Enum, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:FINAL <> ($this:kotlin.Enum<<root>.Z>, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public final fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum) returnType:kotlin.Int [fake_override]
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<<root>.Z>) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public final fun hashCode (): kotlin.Int declared in kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Enum) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
PROPERTY FAKE_OVERRIDE name:name visibility:public modality:FINAL [fake_override,val]
|
||||
FUN FAKE_OVERRIDE name:<get-name> visibility:public modality:FINAL <> ($this:<root>.Z) returnType:kotlin.String [fake_override]
|
||||
FUN FAKE_OVERRIDE name:<get-name> visibility:public modality:FINAL <> ($this:kotlin.Enum<<root>.Z>) returnType:kotlin.String [fake_override]
|
||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:name visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final fun <get-name> (): kotlin.String declared in kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Z
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
PROPERTY FAKE_OVERRIDE name:ordinal visibility:public modality:FINAL [fake_override,val]
|
||||
FUN FAKE_OVERRIDE name:<get-ordinal> visibility:public modality:FINAL <> ($this:<root>.Z) returnType:kotlin.Int [fake_override]
|
||||
FUN FAKE_OVERRIDE name:<get-ordinal> visibility:public modality:FINAL <> ($this:kotlin.Enum<<root>.Z>) returnType:kotlin.Int [fake_override]
|
||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:ordinal visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final fun <get-ordinal> (): kotlin.Int declared in kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Z
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Enum<<root>.Z>) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Enum
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Enum<<root>.Z>
|
||||
FUN ENUM_CLASS_SPECIAL_MEMBER name:values visibility:public modality:FINAL <> () returnType:kotlin.Array<<root>.Z>
|
||||
SYNTHETIC_BODY kind=ENUM_VALUES
|
||||
FUN ENUM_CLASS_SPECIAL_MEMBER name:valueOf visibility:public modality:FINAL <> (value:kotlin.String) returnType:<root>.Z
|
||||
VALUE_PARAMETER name:value index:0 type:kotlin.String
|
||||
SYNTHETIC_BODY kind=ENUM_VALUEOF
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user