FIR: rename Diagnostic to DiagnosticData in checkers generators to avoid conflict with existing Diagnostic class
This commit is contained in:
+3
-3
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.fir.checkers.generator.diagnostics
|
||||
import org.jetbrains.kotlin.diagnostics.Severity
|
||||
import kotlin.reflect.KType
|
||||
|
||||
data class Diagnostic(
|
||||
data class DiagnosticData(
|
||||
val severity: Severity,
|
||||
val name: String,
|
||||
val sourceElementType: KType,
|
||||
@@ -108,9 +108,9 @@ enum class PositioningStrategy(val expressionToCreate: String, val import: Strin
|
||||
private const val positioningStrategiesImport = "org.jetbrains.kotlin.fir.analysis.diagnostics.SourceElementPositioningStrategies"
|
||||
|
||||
|
||||
fun Diagnostic.hasDefaultPositioningStrategy(): Boolean =
|
||||
fun DiagnosticData.hasDefaultPositioningStrategy(): Boolean =
|
||||
positioningStrategy == PositioningStrategy.DEFAULT
|
||||
|
||||
data class DiagnosticList(
|
||||
val diagnostics: List<Diagnostic>,
|
||||
val diagnostics: List<DiagnosticData>,
|
||||
)
|
||||
+2
-2
@@ -17,7 +17,7 @@ import kotlin.reflect.typeOf
|
||||
|
||||
class DiagnosticListBuilder private constructor() {
|
||||
@PrivateForInline
|
||||
val diagnostics = mutableListOf<Diagnostic>()
|
||||
val diagnostics = mutableListOf<DiagnosticData>()
|
||||
|
||||
@PrivateForInline
|
||||
var currentGroupName: String? = null
|
||||
@@ -100,7 +100,7 @@ class DiagnosticBuilder(
|
||||
}
|
||||
|
||||
@OptIn(PrivateForInline::class)
|
||||
fun build() = Diagnostic(
|
||||
fun build() = DiagnosticData(
|
||||
severity,
|
||||
name,
|
||||
sourceElementType,
|
||||
|
||||
+5
-5
@@ -43,7 +43,7 @@ object ErrorListDiagnosticListRenderer : DiagnosticListRenderer() {
|
||||
|
||||
private fun SmartPrinter.printDiagnosticGroup(
|
||||
group: String?,
|
||||
diagnostics: List<Diagnostic>
|
||||
diagnostics: List<DiagnosticData>
|
||||
) {
|
||||
println("// ${group ?: "NO GROUP"}")
|
||||
for (it in diagnostics) {
|
||||
@@ -51,14 +51,14 @@ object ErrorListDiagnosticListRenderer : DiagnosticListRenderer() {
|
||||
}
|
||||
}
|
||||
|
||||
private fun SmartPrinter.printDiagnostic(diagnostic: Diagnostic) {
|
||||
private fun SmartPrinter.printDiagnostic(diagnostic: DiagnosticData) {
|
||||
print("val ${diagnostic.name} by ${diagnostic.getFactoryFunction()}")
|
||||
printTypeArguments(diagnostic.getAllTypeArguments())
|
||||
printPositioningStrategy(diagnostic)
|
||||
println()
|
||||
}
|
||||
|
||||
private fun SmartPrinter.printPositioningStrategy(diagnostic: Diagnostic) {
|
||||
private fun SmartPrinter.printPositioningStrategy(diagnostic: DiagnosticData) {
|
||||
print("(")
|
||||
if (!diagnostic.hasDefaultPositioningStrategy()) {
|
||||
print(diagnostic.positioningStrategy.expressionToCreate)
|
||||
@@ -68,7 +68,7 @@ object ErrorListDiagnosticListRenderer : DiagnosticListRenderer() {
|
||||
|
||||
|
||||
@OptIn(ExperimentalStdlibApi::class)
|
||||
private fun Diagnostic.getAllTypeArguments(): List<KType> = buildList {
|
||||
private fun DiagnosticData.getAllTypeArguments(): List<KType> = buildList {
|
||||
add(sourceElementType)
|
||||
add(psiType)
|
||||
parameters.mapTo(this) { it.type }
|
||||
@@ -124,7 +124,7 @@ object ErrorListDiagnosticListRenderer : DiagnosticListRenderer() {
|
||||
private val KType.kClass: KClass<*>
|
||||
get() = classifier as KClass<*>
|
||||
|
||||
private fun Diagnostic.getFactoryFunction(): String =
|
||||
private fun DiagnosticData.getFactoryFunction(): String =
|
||||
severity.name.toLowerCase() + parameters.size
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -5,12 +5,12 @@
|
||||
|
||||
package org.jetbrains.kotlin.idea.frontend.api.fir.generator
|
||||
|
||||
import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.Diagnostic
|
||||
import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.DiagnosticData
|
||||
import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.DiagnosticParameter
|
||||
import kotlin.reflect.KType
|
||||
|
||||
data class HLDiagnostic(
|
||||
val original: Diagnostic,
|
||||
val original: DiagnosticData,
|
||||
val className: String,
|
||||
val implClassName: String,
|
||||
val parameters: List<HLDiagnosticParameter>,
|
||||
|
||||
+4
-4
@@ -9,7 +9,7 @@ import com.intellij.psi.PsiElement
|
||||
import org.jetbrains.kotlin.contracts.description.EventOccurrencesRange
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.fir.FirEffectiveVisibility
|
||||
import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.Diagnostic
|
||||
import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.DiagnosticData
|
||||
import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.DiagnosticList
|
||||
import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.DiagnosticParameter
|
||||
import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration
|
||||
@@ -35,7 +35,7 @@ object HLDiagnosticConverter {
|
||||
fun convert(diagnosticList: DiagnosticList): HLDiagnosticList =
|
||||
HLDiagnosticList(diagnosticList.diagnostics.map(::convertDiagnostic))
|
||||
|
||||
private fun convertDiagnostic(diagnostic: Diagnostic): HLDiagnostic =
|
||||
private fun convertDiagnostic(diagnostic: DiagnosticData): HLDiagnostic =
|
||||
HLDiagnostic(
|
||||
original = diagnostic,
|
||||
className = diagnostic.getHLDiagnosticClassName(),
|
||||
@@ -56,14 +56,14 @@ object HLDiagnosticConverter {
|
||||
)
|
||||
}
|
||||
|
||||
private fun Diagnostic.getHLDiagnosticClassName() =
|
||||
private fun DiagnosticData.getHLDiagnosticClassName() =
|
||||
name.toLowerCase()
|
||||
.split('_')
|
||||
.joinToString(separator = "") {
|
||||
it.capitalize()
|
||||
}
|
||||
|
||||
private fun Diagnostic.getHLDiagnosticImplClassName() =
|
||||
private fun DiagnosticData.getHLDiagnosticImplClassName() =
|
||||
"${getHLDiagnosticClassName()}Impl"
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user