[FE] Prohibit expect external and expect tailrec

^KT-58536 Fixed
This commit is contained in:
Roman Efremov
2023-05-17 16:08:33 +02:00
committed by Space Team
parent e6d5df18b8
commit 439cc88525
26 changed files with 298 additions and 34 deletions
@@ -455,6 +455,9 @@ object LightTreePositioningStrategies {
val TAILREC_MODIFIER: LightTreePositioningStrategy =
ModifierSetBasedLightTreePositioningStrategy(KtTokens.TAILREC_KEYWORD)
val EXTERNAL_MODIFIER: LightTreePositioningStrategy =
ModifierSetBasedLightTreePositioningStrategy(KtTokens.EXTERNAL_KEYWORD)
val OBJECT_KEYWORD: LightTreePositioningStrategy = keywordStrategy { objectKeyword(it) }
val FIELD_KEYWORD: LightTreePositioningStrategy = keywordStrategy { fieldKeyword(it) }
@@ -309,6 +309,10 @@ object PositioningStrategies {
val TAILREC_MODIFIER: PositioningStrategy<KtModifierListOwner> =
ModifierSetBasedPositioningStrategy(KtTokens.TAILREC_KEYWORD)
@JvmField
val EXTERNAL_MODIFIER: PositioningStrategy<KtModifierListOwner> =
ModifierSetBasedPositioningStrategy(KtTokens.EXTERNAL_KEYWORD)
@JvmField
val OBJECT_KEYWORD: PositioningStrategy<KtObjectDeclaration> = object : PositioningStrategy<KtObjectDeclaration>() {
override fun mark(element: KtObjectDeclaration): List<TextRange> {
@@ -340,6 +340,11 @@ object SourceElementPositioningStrategies {
PositioningStrategies.TAILREC_MODIFIER
)
val EXTERNAL_MODIFIER = SourceElementPositioningStrategy(
LightTreePositioningStrategies.EXTERNAL_MODIFIER,
PositioningStrategies.EXTERNAL_MODIFIER
)
val PROPERTY_DELEGATE = SourceElementPositioningStrategy(
LightTreePositioningStrategies.PROPERTY_DELEGATE,
PositioningStrategies.PROPERTY_DELEGATE