Simplify PositioningStrategy in FIR diagnostic DSL

This commit is contained in:
Mikhail Glukhikh
2021-03-01 12:20:18 +03:00
parent 6fee46316e
commit a101d12c78
@@ -22,34 +22,34 @@ data class DiagnosticParameter(
val type: KType
)
enum class PositioningStrategy(private val strategy: String) {
DEFAULT("DEFAULT"),
VAL_OR_VAR_NODE("VAL_OR_VAR_NODE"),
SECONDARY_CONSTRUCTOR_DELEGATION_CALL("SECONDARY_CONSTRUCTOR_DELEGATION_CALL"),
DECLARATION_NAME("DECLARATION_NAME"),
DECLARATION_SIGNATURE("DECLARATION_SIGNATURE"),
DECLARATION_SIGNATURE_OR_DEFAULT("DECLARATION_SIGNATURE_OR_DEFAULT"),
VISIBILITY_MODIFIER("VISIBILITY_MODIFIER"),
MODALITY_MODIFIER("MODALITY_MODIFIER"),
OPERATOR("OPERATOR"),
PARAMETER_DEFAULT_VALUE("PARAMETER_DEFAULT_VALUE"),
PARAMETER_VARARG_MODIFIER("PARAMETER_VARARG_MODIFIER"),
DECLARATION_RETURN_TYPE("DECLARATION_RETURN_TYPE"),
OVERRIDE_MODIFIER("OVERRIDE_MODIFIER"),
DOT_BY_QUALIFIED("DOT_BY_QUALIFIED"),
OPEN_MODIFIER("OPEN_MODIFIER"),
WHEN_EXPRESSION("WHEN_EXPRESSION"),
IF_EXPRESSION("IF_EXPRESSION"),
VARIANCE_MODIFIER("VARIANCE_MODIFIER"),
LATEINIT_MODIFIER("LATEINIT_MODIFIER"),
SELECTOR_BY_QUALIFIED("SELECTOR_BY_QUALIFIED"),
REFERENCE_BY_QUALIFIED("REFERENCE_BY_QUALIFIED"),
PRIVATE_MODIFIER("PRIVATE_MODIFIER"),
COMPANION_OBJECT("COMPANION_OBJECT"),
enum class PositioningStrategy(private val strategy: String? = null) {
DEFAULT,
VAL_OR_VAR_NODE,
SECONDARY_CONSTRUCTOR_DELEGATION_CALL,
DECLARATION_NAME,
DECLARATION_SIGNATURE,
DECLARATION_SIGNATURE_OR_DEFAULT,
VISIBILITY_MODIFIER,
MODALITY_MODIFIER,
OPERATOR,
PARAMETER_DEFAULT_VALUE,
PARAMETER_VARARG_MODIFIER,
DECLARATION_RETURN_TYPE,
OVERRIDE_MODIFIER,
DOT_BY_QUALIFIED,
OPEN_MODIFIER,
WHEN_EXPRESSION,
IF_EXPRESSION,
VARIANCE_MODIFIER,
LATEINIT_MODIFIER,
SELECTOR_BY_QUALIFIED,
REFERENCE_BY_QUALIFIED,
PRIVATE_MODIFIER,
COMPANION_OBJECT,
;
val expressionToCreate get() = "SourceElementPositioningStrategies.$strategy"
val expressionToCreate get() = "SourceElementPositioningStrategies.${strategy ?: name}"
companion object {
const val importToAdd = "org.jetbrains.kotlin.fir.analysis.diagnostics.SourceElementPositioningStrategies"