KT-4107 Data objects
This commit is contained in:
@@ -29,7 +29,6 @@ open class KtClass : KtClassOrObject {
|
||||
_stub?.isInterface() ?: (findChildByType<PsiElement>(KtTokens.INTERFACE_KEYWORD) != null)
|
||||
|
||||
fun isEnum(): Boolean = hasModifier(KtTokens.ENUM_KEYWORD)
|
||||
fun isData(): Boolean = hasModifier(KtTokens.DATA_KEYWORD)
|
||||
fun isSealed(): Boolean = hasModifier(KtTokens.SEALED_KEYWORD)
|
||||
fun isInner(): Boolean = hasModifier(KtTokens.INNER_KEYWORD)
|
||||
fun isInline(): Boolean = hasModifier(KtTokens.INLINE_KEYWORD)
|
||||
|
||||
@@ -100,6 +100,8 @@ abstract class KtClassOrObject :
|
||||
|
||||
override fun isLocal(): Boolean = stub?.isLocal() ?: KtPsiUtil.isLocal(this)
|
||||
|
||||
fun isData(): Boolean = hasModifier(KtTokens.DATA_KEYWORD)
|
||||
|
||||
override fun getDeclarations(): List<KtDeclaration> = getBody()?.declarations.orEmpty()
|
||||
|
||||
override fun getPresentation(): ItemPresentation? = ItemPresentationProviders.getItemPresentation(this)
|
||||
|
||||
@@ -132,7 +132,8 @@ val featureDependencies = mapOf(
|
||||
EXPECT_KEYWORD to listOf(LanguageFeature.MultiPlatformProjects),
|
||||
ACTUAL_KEYWORD to listOf(LanguageFeature.MultiPlatformProjects),
|
||||
LATEINIT_KEYWORD to listOf(LanguageFeature.LateinitTopLevelProperties, LanguageFeature.LateinitLocalVariables),
|
||||
FUN_KEYWORD to listOf(LanguageFeature.FunctionalInterfaceConversion)
|
||||
FUN_KEYWORD to listOf(LanguageFeature.FunctionalInterfaceConversion),
|
||||
DATA_KEYWORD to listOf(LanguageFeature.DataObjects)
|
||||
)
|
||||
|
||||
val featureDependenciesTargets = mapOf(
|
||||
@@ -141,7 +142,8 @@ val featureDependenciesTargets = mapOf(
|
||||
LanguageFeature.LateinitTopLevelProperties to setOf(KotlinTarget.TOP_LEVEL_PROPERTY),
|
||||
LanguageFeature.InlineClasses to setOf(KotlinTarget.CLASS_ONLY),
|
||||
LanguageFeature.JvmInlineValueClasses to setOf(KotlinTarget.CLASS_ONLY),
|
||||
LanguageFeature.FunctionalInterfaceConversion to setOf(KotlinTarget.INTERFACE)
|
||||
LanguageFeature.FunctionalInterfaceConversion to setOf(KotlinTarget.INTERFACE),
|
||||
LanguageFeature.DataObjects to setOf(KotlinTarget.STANDALONE_OBJECT)
|
||||
)
|
||||
|
||||
val defaultVisibilityTargets: EnumSet<KotlinTarget> = EnumSet.of(
|
||||
@@ -204,7 +206,7 @@ val possibleTargetMap = mapOf(
|
||||
KotlinTarget.LOCAL_VARIABLE,
|
||||
KotlinTarget.BACKING_FIELD
|
||||
),
|
||||
DATA_KEYWORD to EnumSet.of(KotlinTarget.CLASS_ONLY, KotlinTarget.LOCAL_CLASS),
|
||||
DATA_KEYWORD to EnumSet.of(KotlinTarget.CLASS_ONLY, KotlinTarget.LOCAL_CLASS, KotlinTarget.STANDALONE_OBJECT),
|
||||
INLINE_KEYWORD to EnumSet.of(
|
||||
KotlinTarget.FUNCTION,
|
||||
KotlinTarget.PROPERTY,
|
||||
|
||||
Reference in New Issue
Block a user