Drop erroneous FirJavaConstructorBuilder.visibility

Related to KT-62961
This commit is contained in:
Mikhail Glukhikh
2023-11-24 22:38:12 +01:00
committed by Space Team
parent 2cea2b9098
commit 1260d03561
14 changed files with 13 additions and 17 deletions
@@ -480,7 +480,6 @@ abstract class FirJavaFacade(
Modality.FINAL,
EffectiveVisibility.Public
)
visibility = Visibilities.Public
isPrimary = true
returnTypeRef = classType.toFirResolvedTypeRef()
dispatchReceiverType = null
@@ -662,7 +661,6 @@ abstract class FirJavaFacade(
isInner = isThisInner
hasStableParameterNames = false
}
this.visibility = visibility
// TODO get rid of dependency on PSI KT-63046
isPrimary = javaConstructor == null || source?.psi.let { it is PsiMethod && JavaPsiRecordUtil.isCanonicalConstructor(it) }
returnTypeRef = buildResolvedTypeRef {
@@ -698,12 +696,12 @@ abstract class FirJavaFacade(
this.moduleData = moduleData
isFromSource = javaClass.isFromSource
symbol = FirConstructorSymbol(constructorId)
status = FirResolvedDeclarationStatusImpl(Visibilities.Public, Modality.FINAL, EffectiveVisibility.Public)
val visibility = if (classKind == ClassKind.ENUM_CLASS) Visibilities.Private else Visibilities.Public
status = FirResolvedDeclarationStatusImpl(visibility, Modality.FINAL, EffectiveVisibility.Public)
returnTypeRef = buildResolvedTypeRef {
type = ownerClassBuilder.buildSelfTypeRef()
}
valueParametersForAnnotationConstructor?.forEach { _, firValueParameter -> valueParameters += firValueParameter }
visibility = if (classKind == ClassKind.ENUM_CLASS) Visibilities.Private else Visibilities.Public
isInner = false
isPrimary = true
annotationBuilder = { emptyList() }
@@ -172,7 +172,6 @@ class FirJavaConstructor @FirImplementationDetail constructor(
@FirBuilderDsl
class FirJavaConstructorBuilder : FirConstructorBuilder() {
lateinit var visibility: Visibility
var isInner: Boolean by Delegates.notNull()
var isPrimary: Boolean by Delegates.notNull()
var isFromSource: Boolean by Delegates.notNull()
@@ -10,4 +10,4 @@ enum class MyEnum2() {}
class MyClass(): <!FINAL_SUPERTYPE, INVISIBLE_REFERENCE!>MyEnum2<!>() {}
class MyClass2(): <!FINAL_SUPERTYPE!>MyJavaEnum<!>() {}
class MyClass2(): <!FINAL_SUPERTYPE, INVISIBLE_REFERENCE!>MyJavaEnum<!>() {}
@@ -1,6 +1,6 @@
CLASS IR_EXTERNAL_JAVA_DECLARATION_STUB ENUM_CLASS name:JEnum modality:FINAL visibility:public superTypes:[kotlin.Enum<@[FlexibleNullability] <root>.JEnum?>]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.JEnum
CONSTRUCTOR IR_EXTERNAL_JAVA_DECLARATION_STUB visibility:public <> () returnType:<root>.JEnum [primary]
CONSTRUCTOR IR_EXTERNAL_JAVA_DECLARATION_STUB visibility:private <> () returnType:<root>.JEnum [primary]
ENUM_ENTRY IR_EXTERNAL_JAVA_DECLARATION_STUB name:ONE
ENUM_ENTRY IR_EXTERNAL_JAVA_DECLARATION_STUB name:TWO
ENUM_ENTRY IR_EXTERNAL_JAVA_DECLARATION_STUB name:THREE
@@ -11,7 +11,7 @@ public final enum class AnnotatedEnumEntry : R|kotlin/Enum<test/AnnotatedEnumEnt
public final static val entries: R|kotlin/enums/EnumEntries<test/AnnotatedEnumEntry>|
public get(): R|kotlin/enums/EnumEntries<test/AnnotatedEnumEntry>|
public constructor(): R|test/AnnotatedEnumEntry|
private constructor(): R|test/AnnotatedEnumEntry|
public final annotation class Anno : R|kotlin/Annotation| {
public constructor(value: R|kotlin/String|): R|test/AnnotatedEnumEntry.Anno|
@@ -14,7 +14,7 @@ public abstract interface CustomAnnotation : R|kotlin/Any| {
public final static val entries: R|kotlin/enums/EnumEntries<test/CustomAnnotation.MyEnum>|
public get(): R|kotlin/enums/EnumEntries<test/CustomAnnotation.MyEnum>|
public constructor(): R|test/CustomAnnotation.MyEnum|
private constructor(): R|test/CustomAnnotation.MyEnum|
}
@R|test/CustomAnnotation.MyAnnotation|(value = R|test/CustomAnnotation.MyEnum.ONE|) public open class MyTest : R|kotlin/Any| {
@@ -14,7 +14,7 @@ public open class EnumArgumentWithCustomToString : R|kotlin/Any| {
public final static val entries: R|kotlin/enums/EnumEntries<test/EnumArgumentWithCustomToString.E>|
public get(): R|kotlin/enums/EnumEntries<test/EnumArgumentWithCustomToString.E>|
public constructor(): R|test/EnumArgumentWithCustomToString.E|
private constructor(): R|test/EnumArgumentWithCustomToString.E|
}
public final annotation class EnumAnno : R|kotlin/Annotation| {
@@ -18,7 +18,7 @@ public open class NestedEnumArgument : R|kotlin/Any| {
public final static val entries: R|kotlin/enums/EnumEntries<test/NestedEnumArgument.E>|
public get(): R|kotlin/enums/EnumEntries<test/NestedEnumArgument.E>|
public constructor(): R|test/NestedEnumArgument.E|
private constructor(): R|test/NestedEnumArgument.E|
}
}
@@ -13,7 +13,7 @@ public final annotation class Api : R|kotlin/Annotation| {
public final static val entries: R|kotlin/enums/EnumEntries<test/Api.Status>|
public get(): R|kotlin/enums/EnumEntries<test/Api.Status>|
public constructor(): R|test/Api.Status|
private constructor(): R|test/Api.Status|
}
}
@@ -10,7 +10,7 @@ public final enum class EnumWithSpecializedEntry : R|kotlin/Enum<test/EnumWithSp
public final static val entries: R|kotlin/enums/EnumEntries<test/EnumWithSpecializedEntry>|
public get(): R|kotlin/enums/EnumEntries<test/EnumWithSpecializedEntry>|
public constructor(): R|test/EnumWithSpecializedEntry|
private constructor(): R|test/EnumWithSpecializedEntry|
public/*package*/ open class Nested : R|kotlin/Any| {
public/*package*/ constructor(): R|test/EnumWithSpecializedEntry.Nested|
@@ -10,6 +10,6 @@ public final enum class JavaEnum : R|kotlin/Enum<test/JavaEnum!>| {
public final static val entries: R|kotlin/enums/EnumEntries<test/JavaEnum>|
public get(): R|kotlin/enums/EnumEntries<test/JavaEnum>|
public constructor(): R|test/JavaEnum|
private constructor(): R|test/JavaEnum|
}
@@ -11,7 +11,7 @@ public final enum class Enum : R|kotlin/Enum<test/Enum!>| {
public final static val entries: R|kotlin/enums/EnumEntries<test/Enum>|
public get(): R|kotlin/enums/EnumEntries<test/Enum>|
public constructor(): R|test/Enum|
private constructor(): R|test/Enum|
public open inner class Inner : R|kotlin/Any| {
public/*package*/ open fun bar(): R|kotlin/Unit|
@@ -19,6 +19,6 @@ public final enum class StaticMembersInEnum : R|kotlin/Enum<test/StaticMembersIn
public final static val entries: R|kotlin/enums/EnumEntries<test/StaticMembersInEnum>|
public get(): R|kotlin/enums/EnumEntries<test/StaticMembersInEnum>|
public constructor(): R|test/StaticMembersInEnum|
private constructor(): R|test/StaticMembersInEnum|
}
@@ -348,7 +348,6 @@ fun FirClassSymbol<*>.createDefaultJavaConstructor(
isOverride = false
isInner = this@buildJavaConstructor.isInner
}
this.visibility = visibility
isPrimary = false
returnTypeRef = buildResolvedTypeRef {
type = outerClassSymbol.defaultType()