From 72de86a8ba1687b50a107b60138329d8daa90ad7 Mon Sep 17 00:00:00 2001 From: Marco Pennekamp Date: Thu, 24 Aug 2023 22:01:29 +0200 Subject: [PATCH] [AA] Add tests for enum class member scopes ^KT-61405 --- ...oduleMemberScopeByFqNameTestGenerated.java | 18 + ...oduleMemberScopeByFqNameTestGenerated.java | 18 + .../memberScopeByFqName/enumClass.kt | 10 + ...mEntry.pretty.txt => enumClass.pretty.txt} | 6 +- .../memberScopeByFqName/enumClass.txt | 497 ++++++++++++++ .../enumClassWithAbstractMembers.kt | 24 + .../enumClassWithAbstractMembers.pretty.txt | 26 + .../enumClassWithAbstractMembers.txt | 618 ++++++++++++++++++ .../enumClassWithFinalMembers.kt | 16 + .../enumClassWithFinalMembers.pretty.txt | 26 + .../enumClassWithFinalMembers.txt | 618 ++++++++++++++++++ 11 files changed, 1875 insertions(+), 2 deletions(-) create mode 100644 analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.kt rename analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/{enumEntry.pretty.txt => enumClass.pretty.txt} (92%) create mode 100644 analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.txt create mode 100644 analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.kt create mode 100644 analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.pretty.txt create mode 100644 analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.txt create mode 100644 analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.kt create mode 100644 analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.pretty.txt create mode 100644 analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.txt diff --git a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/scopeProvider/FirIdeNormalAnalysisSourceModuleMemberScopeByFqNameTestGenerated.java b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/scopeProvider/FirIdeNormalAnalysisSourceModuleMemberScopeByFqNameTestGenerated.java index a430a954680..da72cbfefef 100644 --- a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/scopeProvider/FirIdeNormalAnalysisSourceModuleMemberScopeByFqNameTestGenerated.java +++ b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/scopeProvider/FirIdeNormalAnalysisSourceModuleMemberScopeByFqNameTestGenerated.java @@ -52,6 +52,24 @@ public class FirIdeNormalAnalysisSourceModuleMemberScopeByFqNameTestGenerated ex runTest("analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/dataClass.kt"); } + @Test + @TestMetadata("enumClass.kt") + public void testEnumClass() throws Exception { + runTest("analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.kt"); + } + + @Test + @TestMetadata("enumClassWithAbstractMembers.kt") + public void testEnumClassWithAbstractMembers() throws Exception { + runTest("analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.kt"); + } + + @Test + @TestMetadata("enumClassWithFinalMembers.kt") + public void testEnumClassWithFinalMembers() throws Exception { + runTest("analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.kt"); + } + @Test @TestMetadata("enumEntryInitializer.kt") public void testEnumEntryInitializer() throws Exception { diff --git a/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/scopeProvider/FirStandaloneNormalAnalysisSourceModuleMemberScopeByFqNameTestGenerated.java b/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/scopeProvider/FirStandaloneNormalAnalysisSourceModuleMemberScopeByFqNameTestGenerated.java index 7cb5539563a..a5330b947fa 100644 --- a/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/scopeProvider/FirStandaloneNormalAnalysisSourceModuleMemberScopeByFqNameTestGenerated.java +++ b/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/scopeProvider/FirStandaloneNormalAnalysisSourceModuleMemberScopeByFqNameTestGenerated.java @@ -52,6 +52,24 @@ public class FirStandaloneNormalAnalysisSourceModuleMemberScopeByFqNameTestGener runTest("analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/dataClass.kt"); } + @Test + @TestMetadata("enumClass.kt") + public void testEnumClass() throws Exception { + runTest("analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.kt"); + } + + @Test + @TestMetadata("enumClassWithAbstractMembers.kt") + public void testEnumClassWithAbstractMembers() throws Exception { + runTest("analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.kt"); + } + + @Test + @TestMetadata("enumClassWithFinalMembers.kt") + public void testEnumClassWithFinalMembers() throws Exception { + runTest("analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.kt"); + } + @Test @TestMetadata("enumEntryInitializer.kt") public void testEnumEntryInitializer() throws Exception { diff --git a/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.kt b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.kt new file mode 100644 index 00000000000..441beb5821b --- /dev/null +++ b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.kt @@ -0,0 +1,10 @@ +package test + +enum class E { + A { + val x: String = "" + }, + B +} + +// class: test/E diff --git a/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumEntry.pretty.txt b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.pretty.txt similarity index 92% rename from analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumEntry.pretty.txt rename to analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.pretty.txt index a7e2b78f330..3ca6559dd13 100644 --- a/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumEntry.pretty.txt +++ b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.pretty.txt @@ -1,5 +1,3 @@ -val x: kotlin.String - protected fun clone(): kotlin.Any operator fun compareTo(other: test.E): kotlin.Int @@ -18,3 +16,7 @@ val ordinal: kotlin.Int fun getDeclaringClass(): (java.lang.Class..java.lang.Class?) fun finalize() + +companion object + +constructor() diff --git a/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.txt b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.txt new file mode 100644 index 00000000000..a9886c67add --- /dev/null +++ b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClass.txt @@ -0,0 +1,497 @@ +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.clone + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: clone + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Any + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Protected + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: test/E.compareTo + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: true + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: compareTo + origin: SUBSTITUTION_OVERRIDE + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [ + KtValueParameterSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + generatedPrimaryConstructorProperty: null + hasDefaultValue: false + isCrossinline: false + isExtension: false + isImplicitLambdaParameter: false + isNoinline: false + isVararg: false + name: other + origin: SUBSTITUTION_OVERRIDE + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + ] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.equals + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: true + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: equals + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Boolean + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [ + KtValueParameterSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + generatedPrimaryConstructorProperty: null + hasDefaultValue: false + isCrossinline: false + isExtension: false + isImplicitLambdaParameter: false + isNoinline: false + isVararg: false + name: other + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Any? + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + ] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.hashCode + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: hashCode + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.toString + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: OPEN + name: toString + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/String + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtKotlinPropertySymbol: + annotationsList: [ + kotlin/internal/IntrinsicConstEvaluation() + psi: null + ] + backingFieldSymbol: KtBackingFieldSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + isExtension: false + name: field + origin: PROPERTY_BACKING_FIELD + owningProperty: KtKotlinPropertySymbol(kotlin/Enum.name) + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/String + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + callableIdIfNonLocal: kotlin/Enum.name + contextReceivers: [] + getter: null + hasBackingField: true + hasGetter: false + hasSetter: false + initializer: null + isActual: false + isConst: false + isDelegatedProperty: false + isExpect: false + isExtension: false + isFromPrimaryConstructor: false + isLateInit: false + isOverride: false + isStatic: false + isVal: true + modality: FINAL + name: name + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/String + setter: null + symbolKind: CLASS_MEMBER + typeParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + getterDeprecationStatus: null + javaGetterName: getName + javaSetterName: null + setterDeprecationStatus: null + +KtKotlinPropertySymbol: + annotationsList: [] + backingFieldSymbol: KtBackingFieldSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + isExtension: false + name: field + origin: PROPERTY_BACKING_FIELD + owningProperty: KtKotlinPropertySymbol(kotlin/Enum.ordinal) + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + callableIdIfNonLocal: kotlin/Enum.ordinal + contextReceivers: [] + getter: null + hasBackingField: true + hasGetter: false + hasSetter: false + initializer: null + isActual: false + isConst: false + isDelegatedProperty: false + isExpect: false + isExtension: false + isFromPrimaryConstructor: false + isLateInit: false + isOverride: false + isStatic: false + isVal: true + modality: FINAL + name: ordinal + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + setter: null + symbolKind: CLASS_MEMBER + typeParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + getterDeprecationStatus: null + javaGetterName: getOrdinal + javaSetterName: null + setterDeprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: test/E.getDeclaringClass + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: false + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: getDeclaringClass + origin: SUBSTITUTION_OVERRIDE + receiverParameter: null + returnType: KtFlexibleType: + annotationsList: [] + type: ft, java/lang/Class?> + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.finalize + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: false + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: finalize + origin: JAVA + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Unit + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: ProtectedAndPackage + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtNamedClassOrObjectSymbol: + annotationsList: [] + classIdIfNonLocal: kotlin/Enum.Companion + classKind: COMPANION_OBJECT + companionObject: null + contextReceivers: [] + isActual: false + isData: false + isExpect: false + isExternal: false + isFun: false + isInline: false + isInner: false + modality: FINAL + name: Companion + origin: LIBRARY + superTypes: [ + KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Any + ] + symbolKind: CLASS_MEMBER + typeParameters: [] + visibility: Public + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + annotationApplicableTargets: null + deprecationStatus: null + +KtConstructorSymbol: + annotationsList: [] + callableIdIfNonLocal: null + containingClassIdIfNonLocal: test/E + contextReceivers: [] + hasStableParameterNames: true + isActual: false + isExpect: false + isExtension: false + isPrimary: true + origin: SOURCE_MEMBER_GENERATED + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Private + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null diff --git a/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.kt b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.kt new file mode 100644 index 00000000000..8a15b38f74c --- /dev/null +++ b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.kt @@ -0,0 +1,24 @@ +package test + +enum class E { + A { + override val foo: Int = 65 + + override fun bar() { + println(foo) + } + }, + B { + override val foo: Int? = null + + override fun bar() { + println("Nothing to see here!") + } + }; + + abstract val foo: Int? + + abstract fun bar() +} + +// class: test/E diff --git a/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.pretty.txt b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.pretty.txt new file mode 100644 index 00000000000..b46d7a1b2d5 --- /dev/null +++ b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.pretty.txt @@ -0,0 +1,26 @@ +abstract val foo: kotlin.Int? + +abstract fun bar() + +protected fun clone(): kotlin.Any + +operator fun compareTo(other: test.E): kotlin.Int + +operator fun equals(other: kotlin.Any?): kotlin.Boolean + +fun hashCode(): kotlin.Int + +open fun toString(): kotlin.String + +@kotlin.internal.IntrinsicConstEvaluation +val name: kotlin.String + +val ordinal: kotlin.Int + +fun getDeclaringClass(): (java.lang.Class..java.lang.Class?) + +fun finalize() + +companion object + +constructor() diff --git a/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.txt b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.txt new file mode 100644 index 00000000000..44e07f07971 --- /dev/null +++ b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithAbstractMembers.txt @@ -0,0 +1,618 @@ +KtKotlinPropertySymbol: + annotationsList: [] + backingFieldSymbol: KtBackingFieldSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + isExtension: false + name: field + origin: PROPERTY_BACKING_FIELD + owningProperty: KtKotlinPropertySymbol(test/E.foo) + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int? + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + callableIdIfNonLocal: test/E.foo + contextReceivers: [] + getter: KtPropertyGetterSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + hasBody: false + hasStableParameterNames: true + isDefault: true + isExtension: false + isInline: false + isOverride: false + modality: FINAL + origin: SOURCE + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int? + symbolKind: ACCESSOR + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + hasBackingField: false + hasGetter: true + hasSetter: false + initializer: null + isActual: false + isConst: false + isDelegatedProperty: false + isExpect: false + isExtension: false + isFromPrimaryConstructor: false + isLateInit: false + isOverride: false + isStatic: false + isVal: true + modality: ABSTRACT + name: foo + origin: SOURCE + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int? + setter: null + symbolKind: CLASS_MEMBER + typeParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + getterDeprecationStatus: null + javaGetterName: getFoo + javaSetterName: null + setterDeprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: test/E.bar + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: ABSTRACT + name: bar + origin: SOURCE + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Unit + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.clone + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: clone + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Any + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Protected + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: test/E.compareTo + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: true + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: compareTo + origin: SUBSTITUTION_OVERRIDE + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [ + KtValueParameterSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + generatedPrimaryConstructorProperty: null + hasDefaultValue: false + isCrossinline: false + isExtension: false + isImplicitLambdaParameter: false + isNoinline: false + isVararg: false + name: other + origin: SUBSTITUTION_OVERRIDE + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + ] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.equals + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: true + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: equals + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Boolean + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [ + KtValueParameterSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + generatedPrimaryConstructorProperty: null + hasDefaultValue: false + isCrossinline: false + isExtension: false + isImplicitLambdaParameter: false + isNoinline: false + isVararg: false + name: other + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Any? + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + ] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.hashCode + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: hashCode + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.toString + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: OPEN + name: toString + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/String + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtKotlinPropertySymbol: + annotationsList: [ + kotlin/internal/IntrinsicConstEvaluation() + psi: null + ] + backingFieldSymbol: KtBackingFieldSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + isExtension: false + name: field + origin: PROPERTY_BACKING_FIELD + owningProperty: KtKotlinPropertySymbol(kotlin/Enum.name) + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/String + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + callableIdIfNonLocal: kotlin/Enum.name + contextReceivers: [] + getter: null + hasBackingField: true + hasGetter: false + hasSetter: false + initializer: null + isActual: false + isConst: false + isDelegatedProperty: false + isExpect: false + isExtension: false + isFromPrimaryConstructor: false + isLateInit: false + isOverride: false + isStatic: false + isVal: true + modality: FINAL + name: name + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/String + setter: null + symbolKind: CLASS_MEMBER + typeParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + getterDeprecationStatus: null + javaGetterName: getName + javaSetterName: null + setterDeprecationStatus: null + +KtKotlinPropertySymbol: + annotationsList: [] + backingFieldSymbol: KtBackingFieldSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + isExtension: false + name: field + origin: PROPERTY_BACKING_FIELD + owningProperty: KtKotlinPropertySymbol(kotlin/Enum.ordinal) + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + callableIdIfNonLocal: kotlin/Enum.ordinal + contextReceivers: [] + getter: null + hasBackingField: true + hasGetter: false + hasSetter: false + initializer: null + isActual: false + isConst: false + isDelegatedProperty: false + isExpect: false + isExtension: false + isFromPrimaryConstructor: false + isLateInit: false + isOverride: false + isStatic: false + isVal: true + modality: FINAL + name: ordinal + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + setter: null + symbolKind: CLASS_MEMBER + typeParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + getterDeprecationStatus: null + javaGetterName: getOrdinal + javaSetterName: null + setterDeprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: test/E.getDeclaringClass + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: false + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: getDeclaringClass + origin: SUBSTITUTION_OVERRIDE + receiverParameter: null + returnType: KtFlexibleType: + annotationsList: [] + type: ft, java/lang/Class?> + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.finalize + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: false + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: finalize + origin: JAVA + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Unit + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: ProtectedAndPackage + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtNamedClassOrObjectSymbol: + annotationsList: [] + classIdIfNonLocal: kotlin/Enum.Companion + classKind: COMPANION_OBJECT + companionObject: null + contextReceivers: [] + isActual: false + isData: false + isExpect: false + isExternal: false + isFun: false + isInline: false + isInner: false + modality: FINAL + name: Companion + origin: LIBRARY + superTypes: [ + KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Any + ] + symbolKind: CLASS_MEMBER + typeParameters: [] + visibility: Public + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + annotationApplicableTargets: null + deprecationStatus: null + +KtConstructorSymbol: + annotationsList: [] + callableIdIfNonLocal: null + containingClassIdIfNonLocal: test/E + contextReceivers: [] + hasStableParameterNames: true + isActual: false + isExpect: false + isExtension: false + isPrimary: true + origin: SOURCE_MEMBER_GENERATED + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Private + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null diff --git a/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.kt b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.kt new file mode 100644 index 00000000000..459d0dd6ebd --- /dev/null +++ b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.kt @@ -0,0 +1,16 @@ +package test + +enum class E { + A { + val x: String = "" + }, + B; + + val foo: Int = 5 + + fun bar() { + println(foo) + } +} + +// class: test/E diff --git a/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.pretty.txt b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.pretty.txt new file mode 100644 index 00000000000..54f533ca437 --- /dev/null +++ b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.pretty.txt @@ -0,0 +1,26 @@ +val foo: kotlin.Int + +fun bar() + +protected fun clone(): kotlin.Any + +operator fun compareTo(other: test.E): kotlin.Int + +operator fun equals(other: kotlin.Any?): kotlin.Boolean + +fun hashCode(): kotlin.Int + +open fun toString(): kotlin.String + +@kotlin.internal.IntrinsicConstEvaluation +val name: kotlin.String + +val ordinal: kotlin.Int + +fun getDeclaringClass(): (java.lang.Class..java.lang.Class?) + +fun finalize() + +companion object + +constructor() diff --git a/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.txt b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.txt new file mode 100644 index 00000000000..3412d7a1632 --- /dev/null +++ b/analysis/analysis-api/testData/components/scopeProvider/memberScopeByFqName/enumClassWithFinalMembers.txt @@ -0,0 +1,618 @@ +KtKotlinPropertySymbol: + annotationsList: [] + backingFieldSymbol: KtBackingFieldSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + isExtension: false + name: field + origin: PROPERTY_BACKING_FIELD + owningProperty: KtKotlinPropertySymbol(test/E.foo) + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + callableIdIfNonLocal: test/E.foo + contextReceivers: [] + getter: KtPropertyGetterSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + hasBody: false + hasStableParameterNames: true + isDefault: true + isExtension: false + isInline: false + isOverride: false + modality: FINAL + origin: SOURCE + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + symbolKind: ACCESSOR + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + hasBackingField: true + hasGetter: true + hasSetter: false + initializer: KtConstantInitializerValue(5) + isActual: false + isConst: false + isDelegatedProperty: false + isExpect: false + isExtension: false + isFromPrimaryConstructor: false + isLateInit: false + isOverride: false + isStatic: false + isVal: true + modality: FINAL + name: foo + origin: SOURCE + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + setter: null + symbolKind: CLASS_MEMBER + typeParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + getterDeprecationStatus: null + javaGetterName: getFoo + javaSetterName: null + setterDeprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: test/E.bar + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: bar + origin: SOURCE + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Unit + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.clone + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: clone + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Any + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Protected + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: test/E.compareTo + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: true + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: compareTo + origin: SUBSTITUTION_OVERRIDE + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [ + KtValueParameterSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + generatedPrimaryConstructorProperty: null + hasDefaultValue: false + isCrossinline: false + isExtension: false + isImplicitLambdaParameter: false + isNoinline: false + isVararg: false + name: other + origin: SUBSTITUTION_OVERRIDE + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + ] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.equals + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: true + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: equals + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Boolean + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [ + KtValueParameterSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + generatedPrimaryConstructorProperty: null + hasDefaultValue: false + isCrossinline: false + isExtension: false + isImplicitLambdaParameter: false + isNoinline: false + isVararg: false + name: other + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Any? + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + ] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.hashCode + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: hashCode + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.toString + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: true + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: OPEN + name: toString + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/String + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtKotlinPropertySymbol: + annotationsList: [ + kotlin/internal/IntrinsicConstEvaluation() + psi: null + ] + backingFieldSymbol: KtBackingFieldSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + isExtension: false + name: field + origin: PROPERTY_BACKING_FIELD + owningProperty: KtKotlinPropertySymbol(kotlin/Enum.name) + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/String + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + callableIdIfNonLocal: kotlin/Enum.name + contextReceivers: [] + getter: null + hasBackingField: true + hasGetter: false + hasSetter: false + initializer: null + isActual: false + isConst: false + isDelegatedProperty: false + isExpect: false + isExtension: false + isFromPrimaryConstructor: false + isLateInit: false + isOverride: false + isStatic: false + isVal: true + modality: FINAL + name: name + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/String + setter: null + symbolKind: CLASS_MEMBER + typeParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + getterDeprecationStatus: null + javaGetterName: getName + javaSetterName: null + setterDeprecationStatus: null + +KtKotlinPropertySymbol: + annotationsList: [] + backingFieldSymbol: KtBackingFieldSymbol: + annotationsList: [] + callableIdIfNonLocal: null + contextReceivers: [] + isExtension: false + name: field + origin: PROPERTY_BACKING_FIELD + owningProperty: KtKotlinPropertySymbol(kotlin/Enum.ordinal) + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + symbolKind: LOCAL + typeParameters: [] + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + callableIdIfNonLocal: kotlin/Enum.ordinal + contextReceivers: [] + getter: null + hasBackingField: true + hasGetter: false + hasSetter: false + initializer: null + isActual: false + isConst: false + isDelegatedProperty: false + isExpect: false + isExtension: false + isFromPrimaryConstructor: false + isLateInit: false + isOverride: false + isStatic: false + isVal: true + modality: FINAL + name: ordinal + origin: LIBRARY + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Int + setter: null + symbolKind: CLASS_MEMBER + typeParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + getterDeprecationStatus: null + javaGetterName: getOrdinal + javaSetterName: null + setterDeprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: test/E.getDeclaringClass + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: false + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: getDeclaringClass + origin: SUBSTITUTION_OVERRIDE + receiverParameter: null + returnType: KtFlexibleType: + annotationsList: [] + type: ft, java/lang/Class?> + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Public + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null + +KtFunctionSymbol: + annotationsList: [] + callableIdIfNonLocal: kotlin/Enum.finalize + contextReceivers: [] + contractEffects: [] + hasStableParameterNames: false + isActual: false + isBuiltinFunctionInvoke: false + isExpect: false + isExtension: false + isExternal: false + isInfix: false + isInline: false + isOperator: false + isOverride: false + isStatic: false + isSuspend: false + modality: FINAL + name: finalize + origin: JAVA + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Unit + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: ProtectedAndPackage + getDispatchReceiver(): KtUsualClassType: + annotationsList: [] + ownTypeArguments: [ + KtTypeParameterType: + annotationsList: [] + type: E + ] + type: kotlin/Enum + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + deprecationStatus: null + +KtNamedClassOrObjectSymbol: + annotationsList: [] + classIdIfNonLocal: kotlin/Enum.Companion + classKind: COMPANION_OBJECT + companionObject: null + contextReceivers: [] + isActual: false + isData: false + isExpect: false + isExternal: false + isFun: false + isInline: false + isInner: false + modality: FINAL + name: Companion + origin: LIBRARY + superTypes: [ + KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: kotlin/Any + ] + symbolKind: CLASS_MEMBER + typeParameters: [] + visibility: Public + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" + annotationApplicableTargets: null + deprecationStatus: null + +KtConstructorSymbol: + annotationsList: [] + callableIdIfNonLocal: null + containingClassIdIfNonLocal: test/E + contextReceivers: [] + hasStableParameterNames: true + isActual: false + isExpect: false + isExtension: false + isPrimary: true + origin: SOURCE_MEMBER_GENERATED + receiverParameter: null + returnType: KtUsualClassType: + annotationsList: [] + ownTypeArguments: [] + type: test/E + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [] + visibility: Private + getContainingModule: KtSourceModule "Sources of main" + deprecationStatus: null