[FIR] Add NON_DATA_CLASS_JVM_RECORD diagnostic

This commit is contained in:
Andrey Zinovyev
2021-08-19 12:43:39 +03:00
committed by Space
parent 84f5d6b149
commit c7008892fd
9 changed files with 36 additions and 15 deletions
@@ -3562,4 +3562,10 @@ internal val KT_DIAGNOSTIC_CONVERTER = KtDiagnosticConverterBuilder.buildConvert
token,
)
}
add(FirJvmErrors.NON_DATA_CLASS_JVM_RECORD) { firDiagnostic ->
NonDataClassJvmRecordImpl(
firDiagnostic as FirPsiDiagnostic,
token,
)
}
}
@@ -2481,4 +2481,8 @@ sealed class KtFirDiagnostic<PSI : PsiElement> : KtDiagnosticWithPsi<PSI> {
override val diagnosticClass get() = JvmRecordWithoutPrimaryConstructorParameters::class
}
abstract class NonDataClassJvmRecord : KtFirDiagnostic<PsiElement>() {
override val diagnosticClass get() = NonDataClassJvmRecord::class
}
}
@@ -4021,3 +4021,10 @@ internal class JvmRecordWithoutPrimaryConstructorParametersImpl(
override val firDiagnostic: FirPsiDiagnostic by weakRef(firDiagnostic)
}
internal class NonDataClassJvmRecordImpl(
firDiagnostic: FirPsiDiagnostic,
override val token: ValidityToken,
) : KtFirDiagnostic.NonDataClassJvmRecord(), KtAbstractFirDiagnostic<PsiElement> {
override val firDiagnostic: FirPsiDiagnostic by weakRef(firDiagnostic)
}