[FE] Add helper methods for reporting diagnostics with DiagnosticContext context receiver
This commit is contained in:
committed by
teamcity
parent
b5ff063164
commit
6ef3d1e573
@@ -369,6 +369,7 @@ val coreLibProjects by extra {
|
|||||||
val projectsWithEnabledContextReceivers by extra {
|
val projectsWithEnabledContextReceivers by extra {
|
||||||
listOf(
|
listOf(
|
||||||
":core:descriptors.jvm",
|
":core:descriptors.jvm",
|
||||||
|
":compiler:frontend.common",
|
||||||
":compiler:fir:fir2ir",
|
":compiler:fir:fir2ir",
|
||||||
":kotlin-lombok-compiler-plugin.k1",
|
":kotlin-lombok-compiler-plugin.k1",
|
||||||
)
|
)
|
||||||
|
|||||||
+118
@@ -0,0 +1,118 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||||
|
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.jetbrains.kotlin.diagnostics
|
||||||
|
|
||||||
|
import org.jetbrains.kotlin.AbstractKtSourceElement
|
||||||
|
|
||||||
|
context(DiagnosticContext)
|
||||||
|
fun DiagnosticReporter.reportOn(
|
||||||
|
source: AbstractKtSourceElement?,
|
||||||
|
factory: KtDiagnosticFactory0,
|
||||||
|
positioningStrategy: AbstractSourceElementPositioningStrategy? = null
|
||||||
|
) {
|
||||||
|
reportOn(source, factory, this@DiagnosticContext, positioningStrategy)
|
||||||
|
}
|
||||||
|
|
||||||
|
context(DiagnosticContext)
|
||||||
|
fun <A : Any> DiagnosticReporter.reportOn(
|
||||||
|
source: AbstractKtSourceElement?,
|
||||||
|
factory: KtDiagnosticFactory1<A>,
|
||||||
|
a: A,
|
||||||
|
positioningStrategy: AbstractSourceElementPositioningStrategy? = null
|
||||||
|
) {
|
||||||
|
reportOn(source, factory, a, this@DiagnosticContext, positioningStrategy)
|
||||||
|
}
|
||||||
|
|
||||||
|
context(DiagnosticContext)
|
||||||
|
fun <A : Any, B : Any> DiagnosticReporter.reportOn(
|
||||||
|
source: AbstractKtSourceElement?,
|
||||||
|
factory: KtDiagnosticFactory2<A, B>,
|
||||||
|
a: A,
|
||||||
|
b: B,
|
||||||
|
positioningStrategy: AbstractSourceElementPositioningStrategy? = null
|
||||||
|
) {
|
||||||
|
reportOn(source, factory, a, b, this@DiagnosticContext, positioningStrategy)
|
||||||
|
}
|
||||||
|
|
||||||
|
context(DiagnosticContext)
|
||||||
|
fun <A : Any, B : Any, C : Any> DiagnosticReporter.reportOn(
|
||||||
|
source: AbstractKtSourceElement?,
|
||||||
|
factory: KtDiagnosticFactory3<A, B, C>,
|
||||||
|
a: A,
|
||||||
|
b: B,
|
||||||
|
c: C,
|
||||||
|
positioningStrategy: AbstractSourceElementPositioningStrategy? = null
|
||||||
|
) {
|
||||||
|
reportOn(source, factory, a, b, c, this@DiagnosticContext, positioningStrategy)
|
||||||
|
}
|
||||||
|
|
||||||
|
context(DiagnosticContext)
|
||||||
|
fun <A : Any, B : Any, C : Any, D : Any> DiagnosticReporter.reportOn(
|
||||||
|
source: AbstractKtSourceElement?,
|
||||||
|
factory: KtDiagnosticFactory4<A, B, C, D>,
|
||||||
|
a: A,
|
||||||
|
b: B,
|
||||||
|
c: C,
|
||||||
|
d: D,
|
||||||
|
positioningStrategy: AbstractSourceElementPositioningStrategy? = null
|
||||||
|
) {
|
||||||
|
reportOn(source, factory, a, b, c, d, this@DiagnosticContext, positioningStrategy)
|
||||||
|
}
|
||||||
|
|
||||||
|
context(DiagnosticContext)
|
||||||
|
fun DiagnosticReporter.reportOn(
|
||||||
|
source: AbstractKtSourceElement?,
|
||||||
|
factory: KtDiagnosticFactoryForDeprecation0,
|
||||||
|
positioningStrategy: AbstractSourceElementPositioningStrategy? = null
|
||||||
|
) {
|
||||||
|
reportOn(source, factory, this@DiagnosticContext, positioningStrategy)
|
||||||
|
}
|
||||||
|
|
||||||
|
context(DiagnosticContext)
|
||||||
|
fun <A : Any> DiagnosticReporter.reportOn(
|
||||||
|
source: AbstractKtSourceElement?,
|
||||||
|
factory: KtDiagnosticFactoryForDeprecation1<A>,
|
||||||
|
a: A,
|
||||||
|
positioningStrategy: AbstractSourceElementPositioningStrategy? = null
|
||||||
|
) {
|
||||||
|
reportOn(source, factory, a, this@DiagnosticContext, positioningStrategy)
|
||||||
|
}
|
||||||
|
|
||||||
|
context(DiagnosticContext)
|
||||||
|
fun <A : Any, B : Any> DiagnosticReporter.reportOn(
|
||||||
|
source: AbstractKtSourceElement?,
|
||||||
|
factory: KtDiagnosticFactoryForDeprecation2<A, B>,
|
||||||
|
a: A,
|
||||||
|
b: B,
|
||||||
|
positioningStrategy: AbstractSourceElementPositioningStrategy? = null
|
||||||
|
) {
|
||||||
|
reportOn(source, factory, a, b, this@DiagnosticContext, positioningStrategy)
|
||||||
|
}
|
||||||
|
|
||||||
|
context(DiagnosticContext)
|
||||||
|
fun <A : Any, B : Any, C : Any> DiagnosticReporter.reportOn(
|
||||||
|
source: AbstractKtSourceElement?,
|
||||||
|
factory: KtDiagnosticFactoryForDeprecation3<A, B, C>,
|
||||||
|
a: A,
|
||||||
|
b: B,
|
||||||
|
c: C,
|
||||||
|
positioningStrategy: AbstractSourceElementPositioningStrategy? = null
|
||||||
|
) {
|
||||||
|
reportOn(source, factory, a, b, c, this@DiagnosticContext, positioningStrategy)
|
||||||
|
}
|
||||||
|
|
||||||
|
context(DiagnosticContext)
|
||||||
|
fun <A : Any, B : Any, C : Any, D : Any> DiagnosticReporter.reportOn(
|
||||||
|
source: AbstractKtSourceElement?,
|
||||||
|
factory: KtDiagnosticFactoryForDeprecation4<A, B, C, D>,
|
||||||
|
a: A,
|
||||||
|
b: B,
|
||||||
|
c: C,
|
||||||
|
d: D,
|
||||||
|
positioningStrategy: AbstractSourceElementPositioningStrategy? = null
|
||||||
|
) {
|
||||||
|
reportOn(source, factory, a, b, c, d, this@DiagnosticContext, positioningStrategy)
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user