Move static constants with builtin names to :core:descriptors.common module
This commit is contained in:
+3
-3
@@ -35,7 +35,7 @@ import org.jetbrains.kotlin.analyzer.ResolverForProject.Companion.resolverForMod
|
||||
import org.jetbrains.kotlin.analyzer.ResolverForProject.Companion.resolverForScriptDependenciesName
|
||||
import org.jetbrains.kotlin.analyzer.ResolverForProject.Companion.resolverForSdkName
|
||||
import org.jetbrains.kotlin.analyzer.ResolverForProject.Companion.resolverForSpecialInfoName
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.caches.resolve.KotlinCacheService
|
||||
import org.jetbrains.kotlin.config.LanguageFeature
|
||||
import org.jetbrains.kotlin.context.GlobalContext
|
||||
@@ -518,7 +518,7 @@ class KotlinCacheServiceImpl(val project: Project) : KotlinCacheService {
|
||||
}
|
||||
|
||||
private companion object {
|
||||
private val SUPPRESS_ANNOTATION_SHORT_NAME = KotlinBuiltIns.FQ_NAMES.suppress.shortName().identifier
|
||||
private val SUPPRESS_ANNOTATION_SHORT_NAME = KotlinBuiltInsNames.FqNames.suppress.shortName().identifier
|
||||
}
|
||||
}
|
||||
|
||||
@@ -528,4 +528,4 @@ fun IdeaModuleInfo.supportsAdditionalBuiltInsMembers(project: Project): Boolean
|
||||
.supportsFeature(LanguageFeature.AdditionalBuiltInsMembers)
|
||||
}
|
||||
|
||||
val IdeaModuleInfo.sdk: Sdk? get() = dependencies().firstIsInstanceOrNull<SdkInfo>()?.sdk
|
||||
val IdeaModuleInfo.sdk: Sdk? get() = dependencies().firstIsInstanceOrNull<SdkInfo>()?.sdk
|
||||
|
||||
+2
-2
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.idea.decompiler.stubBuilder
|
||||
import com.intellij.openapi.diagnostic.Logger
|
||||
import com.intellij.psi.PsiElement
|
||||
import com.intellij.psi.stubs.StubElement
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.builtins.isNumberedFunctionClassFqName
|
||||
import org.jetbrains.kotlin.descriptors.SourceElement
|
||||
import org.jetbrains.kotlin.idea.decompiler.stubBuilder.flags.*
|
||||
@@ -64,7 +64,7 @@ private class ClassClsStubBuilder(
|
||||
private val supertypeIds = run {
|
||||
val supertypeIds = classProto.supertypes(c.typeTable).map { c.nameResolver.getClassId(it.className) }
|
||||
//empty supertype list if single supertype is Any
|
||||
if (supertypeIds.singleOrNull()?.let { KotlinBuiltIns.FQ_NAMES.any == it.asSingleFqName().toUnsafe() } == true) {
|
||||
if (supertypeIds.singleOrNull()?.let { KotlinBuiltInsNames.FqNames.any == it.asSingleFqName().toUnsafe() } == true) {
|
||||
listOf()
|
||||
} else {
|
||||
supertypeIds
|
||||
|
||||
+6
-7
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.idea.decompiler.stubBuilder
|
||||
|
||||
import com.intellij.psi.PsiElement
|
||||
import com.intellij.psi.stubs.StubElement
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.builtins.isBuiltinFunctionClass
|
||||
import org.jetbrains.kotlin.lexer.KtModifierKeywordToken
|
||||
import org.jetbrains.kotlin.lexer.KtTokens
|
||||
@@ -24,7 +24,6 @@ import org.jetbrains.kotlin.psi.*
|
||||
import org.jetbrains.kotlin.psi.stubs.KotlinUserTypeStub
|
||||
import org.jetbrains.kotlin.psi.stubs.elements.KtStubElementTypes
|
||||
import org.jetbrains.kotlin.psi.stubs.impl.*
|
||||
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
||||
import org.jetbrains.kotlin.serialization.deserialization.ProtoContainer
|
||||
import org.jetbrains.kotlin.serialization.deserialization.getClassId
|
||||
import org.jetbrains.kotlin.serialization.deserialization.getName
|
||||
@@ -33,7 +32,7 @@ import org.jetbrains.kotlin.utils.doNothing
|
||||
import java.util.*
|
||||
|
||||
// TODO: see DescriptorRendererOptions.excludedTypeAnnotationClasses for decompiler
|
||||
private val ANNOTATIONS_NOT_LOADED_FOR_TYPES = setOf(KotlinBuiltIns.FQ_NAMES.parameterName)
|
||||
private val ANNOTATIONS_NOT_LOADED_FOR_TYPES = setOf(KotlinBuiltInsNames.FqNames.parameterName)
|
||||
|
||||
class TypeClsStubBuilder(private val c: ClsStubBuilderContext) {
|
||||
fun createTypeReferenceStub(
|
||||
@@ -96,7 +95,7 @@ class TypeClsStubBuilder(private val c: ClsStubBuilderContext) {
|
||||
val shouldBuildAsFunctionType = isBuiltinFunctionClass(classId) && type.argumentList.none { it.projection == Projection.STAR }
|
||||
if (shouldBuildAsFunctionType) {
|
||||
val (extensionAnnotations, notExtensionAnnotations) = annotations.partition {
|
||||
it.classId.asSingleFqName() == KotlinBuiltIns.FQ_NAMES.extensionFunctionType
|
||||
it.classId.asSingleFqName() == KotlinBuiltInsNames.FqNames.extensionFunctionType
|
||||
}
|
||||
|
||||
val isExtension = extensionAnnotations.isNotEmpty()
|
||||
@@ -195,8 +194,8 @@ class TypeClsStubBuilder(private val c: ClsStubBuilderContext) {
|
||||
val classId = c.nameResolver.getClassId(parameterType.className)
|
||||
val fqName = classId.asSingleFqName()
|
||||
assert(
|
||||
fqName == DescriptorUtils.CONTINUATION_INTERFACE_FQ_NAME_EXPERIMENTAL
|
||||
|| fqName == DescriptorUtils.CONTINUATION_INTERFACE_FQ_NAME_RELEASE
|
||||
fqName == KotlinBuiltInsNames.CONTINUATION_INTERFACE_FQ_NAME_EXPERIMENTAL
|
||||
|| fqName == KotlinBuiltInsNames.CONTINUATION_INTERFACE_FQ_NAME_RELEASE
|
||||
) {
|
||||
"Last parameter type of suspend function must be Continuation, but it is $fqName"
|
||||
}
|
||||
@@ -338,7 +337,7 @@ class TypeClsStubBuilder(private val c: ClsStubBuilderContext) {
|
||||
|
||||
private fun Type.isDefaultUpperBound(): Boolean {
|
||||
return this.hasClassName() &&
|
||||
c.nameResolver.getClassId(className).let { KotlinBuiltIns.FQ_NAMES.any == it.asSingleFqName().toUnsafe() } &&
|
||||
c.nameResolver.getClassId(className).let { KotlinBuiltInsNames.FqNames.any == it.asSingleFqName().toUnsafe() } &&
|
||||
this.nullable
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.idea.decompiler.stubBuilder
|
||||
import com.intellij.psi.PsiElement
|
||||
import com.intellij.psi.stubs.StubElement
|
||||
import com.intellij.util.io.StringRef
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.descriptors.SourceElement
|
||||
import org.jetbrains.kotlin.idea.decompiler.stubBuilder.flags.FlagsToModifiers
|
||||
import org.jetbrains.kotlin.idea.stubindex.KotlinFileStubForIde
|
||||
@@ -139,7 +139,7 @@ fun createStubForTypeName(
|
||||
): KotlinUserTypeStub {
|
||||
val substituteWithAny = typeClassId.isLocal
|
||||
|
||||
val fqName = if (substituteWithAny) KotlinBuiltIns.FQ_NAMES.any
|
||||
val fqName = if (substituteWithAny) KotlinBuiltInsNames.FqNames.any
|
||||
else typeClassId.asSingleFqName().toUnsafe()
|
||||
|
||||
val segments = fqName.pathSegments().asReversed()
|
||||
|
||||
+4
-4
@@ -21,7 +21,7 @@ import com.intellij.codeInspection.SuppressIntentionAction
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.psi.PsiElement
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.idea.KotlinIdeaAnalysisBundle
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.analyze
|
||||
import org.jetbrains.kotlin.idea.util.addAnnotation
|
||||
@@ -63,7 +63,7 @@ class KotlinSuppressIntentionAction private constructor(
|
||||
val id = "\"$suppressKey\""
|
||||
when (suppressAt) {
|
||||
is KtModifierListOwner -> suppressAt.addAnnotation(
|
||||
KotlinBuiltIns.FQ_NAMES.suppress,
|
||||
KotlinBuiltInsNames.FqNames.suppress,
|
||||
id,
|
||||
whiteSpaceText = if (kind.newLineNeeded) "\n" else " ",
|
||||
addToExistingAnnotation = { entry ->
|
||||
@@ -150,7 +150,7 @@ class KotlinSuppressIntentionAction private constructor(
|
||||
}
|
||||
|
||||
private fun suppressAnnotationText(id: String, withAt: Boolean = true) =
|
||||
"${if (withAt) "@" else ""}${KotlinBuiltIns.FQ_NAMES.suppress.shortName()}($id)"
|
||||
"${if (withAt) "@" else ""}${KotlinBuiltInsNames.FqNames.suppress.shortName()}($id)"
|
||||
|
||||
private fun findSuppressAnnotation(annotated: KtAnnotated): KtAnnotationEntry? {
|
||||
val context = annotated.analyze()
|
||||
@@ -164,7 +164,7 @@ class KotlinSuppressIntentionAction private constructor(
|
||||
|
||||
private fun findSuppressAnnotation(context: BindingContext, annotationEntries: List<KtAnnotationEntry>): KtAnnotationEntry? {
|
||||
return annotationEntries.firstOrNull { entry ->
|
||||
context.get(BindingContext.ANNOTATION, entry)?.fqName == KotlinBuiltIns.FQ_NAMES.suppress
|
||||
context.get(BindingContext.ANNOTATION, entry)?.fqName == KotlinBuiltInsNames.FqNames.suppress
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-1
@@ -9,6 +9,7 @@ import com.intellij.psi.PsiClass
|
||||
import com.intellij.psi.PsiDocCommentOwner
|
||||
import com.intellij.psi.PsiNamedElement
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.config.LanguageVersionSettings
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
|
||||
import org.jetbrains.kotlin.idea.core.completion.DeclarationLookupObject
|
||||
@@ -74,7 +75,7 @@ fun isDeprecatedAtCallSite(descriptor: DeclarationDescriptor, languageVersionSet
|
||||
if (!isDeprecatedAtDeclarationSite) return false
|
||||
|
||||
return computeLevelForDeprecatedSinceKotlin(
|
||||
descriptor.original.annotations.findAnnotation(KotlinBuiltIns.FQ_NAMES.deprecatedSinceKotlin) ?: return true,
|
||||
descriptor.original.annotations.findAnnotation(KotlinBuiltInsNames.FqNames.deprecatedSinceKotlin) ?: return true,
|
||||
languageVersionSettings.apiVersion
|
||||
) != null
|
||||
}
|
||||
|
||||
@@ -9,14 +9,14 @@ import com.intellij.openapi.project.Project
|
||||
import com.intellij.psi.JavaPsiFacade
|
||||
import com.intellij.psi.PsiClass
|
||||
import com.intellij.psi.search.GlobalSearchScope
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.idea.util.application.runReadAction
|
||||
import org.jetbrains.kotlin.idea.util.runWithAlternativeResolveEnabled
|
||||
|
||||
fun getKotlinJvmRuntimeMarkerClass(project: Project, scope: GlobalSearchScope): PsiClass? {
|
||||
return runReadAction {
|
||||
project.runWithAlternativeResolveEnabled {
|
||||
JavaPsiFacade.getInstance(project).findClass(KotlinBuiltIns.FQ_NAMES.unit.asString(), scope)
|
||||
JavaPsiFacade.getInstance(project).findClass(KotlinBuiltInsNames.FqNames.unit.asString(), scope)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+3
-2
@@ -6,6 +6,7 @@
|
||||
package org.jetbrains.kotlin.idea.frontend.api.types
|
||||
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
|
||||
val KtType.isUnit: Boolean get() = isClassTypeWithClassId(DefaultTypeClassIds.UNIT)
|
||||
@@ -16,5 +17,5 @@ fun KtType.isClassTypeWithClassId(classId: ClassId): Boolean {
|
||||
}
|
||||
|
||||
private object DefaultTypeClassIds {
|
||||
val UNIT = ClassId.topLevel(KotlinBuiltIns.FQ_NAMES.unit.toSafe())
|
||||
}
|
||||
val UNIT = ClassId.topLevel(KotlinBuiltInsNames.FqNames.unit.toSafe())
|
||||
}
|
||||
|
||||
+2
-2
@@ -24,7 +24,7 @@ import com.intellij.psi.search.DelegatingGlobalSearchScope
|
||||
import com.intellij.psi.search.FileTypeIndex
|
||||
import com.intellij.psi.search.GlobalSearchScope
|
||||
import org.jetbrains.annotations.CalledInBackground
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.idea.KotlinFileType
|
||||
import org.jetbrains.kotlin.idea.KotlinJvmBundle
|
||||
import org.jetbrains.kotlin.idea.core.util.getKotlinJvmRuntimeMarkerClass
|
||||
@@ -290,7 +290,7 @@ fun hasKotlinJsRuntimeInScope(module: Module): Boolean {
|
||||
}
|
||||
|
||||
fun hasKotlinCommonRuntimeInScope(scope: GlobalSearchScope): Boolean {
|
||||
return IDEVirtualFileFinder(scope).hasMetadataPackage(KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME)
|
||||
return IDEVirtualFileFinder(scope).hasMetadataPackage(KotlinBuiltInsNames.BUILT_INS_PACKAGE_FQ_NAME)
|
||||
}
|
||||
|
||||
class LibraryKindSearchScope(
|
||||
|
||||
+1
-2
@@ -29,7 +29,6 @@ import org.jetbrains.kotlin.platform.TargetPlatform
|
||||
import org.jetbrains.kotlin.platform.jvm.JvmPlatforms
|
||||
import org.jetbrains.kotlin.psi.KtCodeFragment
|
||||
import org.jetbrains.kotlin.psi.externalDescriptors
|
||||
import org.jetbrains.kotlin.resolve.ResolutionAnchorProvider
|
||||
import org.jetbrains.kotlin.resolve.scopes.MemberScope
|
||||
import org.jetbrains.kotlin.types.KotlinType
|
||||
import org.jetbrains.kotlin.types.Variance
|
||||
@@ -217,4 +216,4 @@ internal class DebugLabelPropertyDescriptor(
|
||||
/*isActual = */false,
|
||||
/*isExternal = */false,
|
||||
/*isDelegated = */false
|
||||
)
|
||||
)
|
||||
|
||||
+13
-13
@@ -7,22 +7,22 @@ package org.jetbrains.kotlin.idea.debugger.sequence.trace.dsl
|
||||
|
||||
import com.intellij.debugger.streams.trace.dsl.Types
|
||||
import com.intellij.debugger.streams.trace.impl.handler.type.*
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns.FQ_NAMES
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames.FqNames
|
||||
|
||||
object KotlinSequenceTypes : Types {
|
||||
override val ANY: GenericType = ClassTypeImpl(FQ_NAMES.any.asString(), "kotlin.Any()")
|
||||
override val ANY: GenericType = ClassTypeImpl(FqNames.any.asString(), "kotlin.Any()")
|
||||
|
||||
override val BOOLEAN: GenericType = ClassTypeImpl(FQ_NAMES._boolean.asString(), "false")
|
||||
val BYTE: GenericType = ClassTypeImpl(FQ_NAMES._byte.asString(), "0")
|
||||
val SHORT: GenericType = ClassTypeImpl(FQ_NAMES._short.asString(), "0")
|
||||
val CHAR: GenericType = ClassTypeImpl(FQ_NAMES._char.asString(), "0.toChar()")
|
||||
override val INT: GenericType = ClassTypeImpl(FQ_NAMES._int.asString(), "0")
|
||||
override val LONG: GenericType = ClassTypeImpl(FQ_NAMES._long.asString(), "0L")
|
||||
val FLOAT: GenericType = ClassTypeImpl(FQ_NAMES._float.asString(), "0.0f")
|
||||
override val DOUBLE: GenericType = ClassTypeImpl(FQ_NAMES._double.asString(), "0.0")
|
||||
override val STRING: GenericType = ClassTypeImpl(FQ_NAMES.string.asString(), "\"\"")
|
||||
override val EXCEPTION: GenericType = ClassTypeImpl(FQ_NAMES.throwable.asString(), "kotlin.Throwable()")
|
||||
override val VOID: GenericType = ClassTypeImpl(FQ_NAMES.unit.asString(), "Unit")
|
||||
override val BOOLEAN: GenericType = ClassTypeImpl(FqNames._boolean.asString(), "false")
|
||||
val BYTE: GenericType = ClassTypeImpl(FqNames._byte.asString(), "0")
|
||||
val SHORT: GenericType = ClassTypeImpl(FqNames._short.asString(), "0")
|
||||
val CHAR: GenericType = ClassTypeImpl(FqNames._char.asString(), "0.toChar()")
|
||||
override val INT: GenericType = ClassTypeImpl(FqNames._int.asString(), "0")
|
||||
override val LONG: GenericType = ClassTypeImpl(FqNames._long.asString(), "0L")
|
||||
val FLOAT: GenericType = ClassTypeImpl(FqNames._float.asString(), "0.0f")
|
||||
override val DOUBLE: GenericType = ClassTypeImpl(FqNames._double.asString(), "0.0")
|
||||
override val STRING: GenericType = ClassTypeImpl(FqNames.string.asString(), "\"\"")
|
||||
override val EXCEPTION: GenericType = ClassTypeImpl(FqNames.throwable.asString(), "kotlin.Throwable()")
|
||||
override val VOID: GenericType = ClassTypeImpl(FqNames.unit.asString(), "Unit")
|
||||
|
||||
val NULLABLE_ANY: GenericType = nullable { ANY }
|
||||
|
||||
|
||||
+3
-3
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.idea.conversion.copy
|
||||
|
||||
import com.intellij.psi.util.parents
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.builtins.jvm.JavaToKotlinClassMap
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
|
||||
@@ -119,10 +119,10 @@ class JavaContextDeclarationRenderer {
|
||||
|
||||
private fun StringBuilder.renderFqName(fqName: FqNameUnsafe) {
|
||||
val stringFqName = when (fqName) {
|
||||
KotlinBuiltIns.FQ_NAMES.unit -> "void"
|
||||
KotlinBuiltInsNames.FqNames.unit -> "void"
|
||||
else -> JavaToKotlinClassMap.mapKotlinToJava(fqName)?.asSingleFqName() ?: fqName.asString()
|
||||
}
|
||||
append(stringFqName)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
+4
-4
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.idea.inspections
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.psi.codeStyle.CodeStyleManager
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility
|
||||
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.PackageFragmentDescriptor
|
||||
@@ -110,7 +110,7 @@ class DeprecatedCallableAddReplaceWithInspection : AbstractApplicabilityBasedIns
|
||||
|
||||
val descriptor = resolvedCall.resultingDescriptor.containingDeclaration
|
||||
val descriptorFqName = DescriptorUtils.getFqName(descriptor).toSafe()
|
||||
if (descriptorFqName != KotlinBuiltIns.FQ_NAMES.deprecated) continue
|
||||
if (descriptorFqName != KotlinBuiltInsNames.FqNames.deprecated) continue
|
||||
|
||||
val args = resolvedCall.valueArguments.mapKeys { it.key.name.asString() }
|
||||
val replaceWithArguments = args["replaceWith"] /*TODO: kotlin.deprecated::replaceWith.name*/
|
||||
@@ -231,6 +231,6 @@ class DeprecatedCallableAddReplaceWithInspection : AbstractApplicabilityBasedIns
|
||||
}
|
||||
|
||||
companion object {
|
||||
val DEPRECATED_NAME = KotlinBuiltIns.FQ_NAMES.deprecated.shortName()
|
||||
val DEPRECATED_NAME = KotlinBuiltInsNames.FqNames.deprecated.shortName()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -12,7 +12,7 @@ import com.intellij.codeInspection.ProblemsHolder
|
||||
import com.intellij.openapi.module.ModuleUtilCore
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.psi.PsiElementVisitor
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.config.ApiVersion
|
||||
import org.jetbrains.kotlin.idea.KotlinBundle
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.analyze
|
||||
@@ -88,14 +88,14 @@ class JavaCollectionsStaticMethodInspection : AbstractKotlinInspection() {
|
||||
}
|
||||
|
||||
private fun KotlinType.isMutableList() =
|
||||
constructor.declarationDescriptor?.fqNameSafe == KotlinBuiltIns.FQ_NAMES.mutableList
|
||||
constructor.declarationDescriptor?.fqNameSafe == KotlinBuiltInsNames.FqNames.mutableList
|
||||
|
||||
private fun KotlinType.isMutableListOrSubtype(): Boolean {
|
||||
return isMutableList() || constructor.supertypes.reversed().any { it.isMutableList() }
|
||||
}
|
||||
|
||||
private fun KotlinType.isList() =
|
||||
constructor.declarationDescriptor?.fqNameSafe == KotlinBuiltIns.FQ_NAMES.list
|
||||
constructor.declarationDescriptor?.fqNameSafe == KotlinBuiltInsNames.FqNames.list
|
||||
|
||||
private fun KotlinType.isListOrSubtype(): Boolean {
|
||||
return isList() || constructor.supertypes.reversed().any { it.isList() }
|
||||
|
||||
@@ -12,6 +12,7 @@ import com.intellij.codeInspection.ProblemsHolder
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.psi.PsiElementVisitor
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
|
||||
import org.jetbrains.kotlin.idea.KotlinBundle
|
||||
import org.jetbrains.kotlin.idea.MainFunctionDetector
|
||||
@@ -76,7 +77,7 @@ private class ChangeMainFunctionReturnTypeToUnitFix(private val hasExplicitRetur
|
||||
if (function.hasBlockBody()) {
|
||||
function.typeReference = null
|
||||
} else {
|
||||
function.setType(KotlinBuiltIns.FQ_NAMES.unit.asString())
|
||||
function.setType(KotlinBuiltInsNames.FqNames.unit.asString())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -10,7 +10,7 @@ import com.intellij.codeInspection.*
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.util.text.StringUtil
|
||||
import com.intellij.psi.PsiElementVisitor
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.diagnostics.DiagnosticFactory
|
||||
import org.jetbrains.kotlin.diagnostics.Errors.*
|
||||
import org.jetbrains.kotlin.idea.KotlinBundle
|
||||
@@ -27,7 +27,7 @@ class MigrateDiagnosticSuppressionInspection : AbstractKotlinInspection(), Clean
|
||||
if (annotationEntry.calleeExpression?.text != "Suppress") return
|
||||
val context = annotationEntry.analyze(BodyResolveMode.PARTIAL)
|
||||
val descriptor = context[BindingContext.ANNOTATION, annotationEntry] ?: return
|
||||
if (descriptor.fqName != KotlinBuiltIns.FQ_NAMES.suppress) return
|
||||
if (descriptor.fqName != KotlinBuiltInsNames.FqNames.suppress) return
|
||||
|
||||
for (argument in annotationEntry.valueArguments) {
|
||||
val expression = argument.getArgumentExpression() as? KtStringTemplateExpression ?: continue
|
||||
|
||||
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.idea.inspections
|
||||
import com.intellij.codeInspection.*
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.psi.PsiElementVisitor
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.idea.KotlinBundle
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.analyze
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.resolveToCall
|
||||
@@ -43,7 +43,7 @@ class RedundantUnitExpressionInspection : AbstractKotlinInspection(), CleanupLoc
|
||||
val parent = referenceExpression.parent ?: return false
|
||||
if (parent is KtReturnExpression) {
|
||||
val expectedReturnType = parent.expectedReturnType() ?: return false
|
||||
return expectedReturnType.nameIfStandardType != KotlinBuiltIns.FQ_NAMES.any.shortName() && !expectedReturnType.isMarkedNullable
|
||||
return expectedReturnType.nameIfStandardType != KotlinBuiltInsNames.FqNames.any.shortName() && !expectedReturnType.isMarkedNullable
|
||||
}
|
||||
|
||||
if (parent is KtBlockExpression) {
|
||||
@@ -73,7 +73,7 @@ class RedundantUnitExpressionInspection : AbstractKotlinInspection(), CleanupLoc
|
||||
}
|
||||
|
||||
private fun KtExpression.isUnitLiteral(): Boolean =
|
||||
KotlinBuiltIns.FQ_NAMES.unit.shortName() == (this as? KtNameReferenceExpression)?.getReferencedNameAsName()
|
||||
KotlinBuiltInsNames.FqNames.unit.shortName() == (this as? KtNameReferenceExpression)?.getReferencedNameAsName()
|
||||
|
||||
private fun KtReturnExpression.expectedReturnType(): KotlinType? {
|
||||
val functionDescriptor = getTargetFunctionDescriptor(analyze()) ?: return null
|
||||
|
||||
@@ -16,6 +16,7 @@ import com.intellij.openapi.project.Project
|
||||
import com.intellij.profile.codeInspection.ProjectInspectionProfileManager
|
||||
import com.intellij.psi.PsiElement
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.idea.KotlinBundle
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.analyze
|
||||
import org.jetbrains.kotlin.idea.core.canOmitDeclaredType
|
||||
@@ -168,7 +169,7 @@ class UseExpressionBodyInspection(private val convertEmptyToUnit: Boolean) : Abs
|
||||
if (!declaration.hasDeclaredReturnType() && declaration is KtNamedFunction && block.statements.isNotEmpty()) {
|
||||
val valueType = value.analyze().getType(value)
|
||||
if (valueType == null || !KotlinBuiltIns.isUnit(valueType)) {
|
||||
declaration.setType(KotlinBuiltIns.FQ_NAMES.unit.asString(), shortenReferences = true)
|
||||
declaration.setType(KotlinBuiltInsNames.FqNames.unit.asString(), shortenReferences = true)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -218,4 +219,4 @@ class UseExpressionBodyInspection(private val convertEmptyToUnit: Boolean) : Abs
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
+4
-4
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.idea.inspections.collections
|
||||
|
||||
import com.intellij.codeInspection.ProblemHighlightType
|
||||
import com.intellij.openapi.util.TextRange
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.idea.KotlinBundle
|
||||
import org.jetbrains.kotlin.idea.quickfix.ReplaceSelectorOfQualifiedExpressionFix
|
||||
import org.jetbrains.kotlin.psi.KtExpression
|
||||
@@ -17,9 +17,9 @@ import org.jetbrains.kotlin.psi.psiUtil.startOffset
|
||||
import org.jetbrains.kotlin.resolve.BindingContext
|
||||
import org.jetbrains.kotlin.resolve.calls.callUtil.getResolvedCall
|
||||
import org.jetbrains.kotlin.resolve.calls.callUtil.getType
|
||||
import org.jetbrains.kotlin.resolve.calls.inference.model.TypeVariableTypeConstructor
|
||||
import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameSafe
|
||||
import org.jetbrains.kotlin.types.KotlinType
|
||||
import org.jetbrains.kotlin.resolve.calls.inference.model.TypeVariableTypeConstructor
|
||||
import org.jetbrains.kotlin.types.TypeUtils
|
||||
import org.jetbrains.kotlin.types.isFlexible
|
||||
import org.jetbrains.kotlin.types.typeUtil.isSubtypeOf
|
||||
@@ -96,5 +96,5 @@ class UselessCallOnCollectionInspection : AbstractUselessCallInspection() {
|
||||
}
|
||||
}
|
||||
|
||||
private fun KotlinType?.isList() = this?.constructor?.declarationDescriptor?.fqNameSafe == KotlinBuiltIns.FQ_NAMES.list
|
||||
}
|
||||
private fun KotlinType?.isList() = this?.constructor?.declarationDescriptor?.fqNameSafe == KotlinBuiltInsNames.FqNames.list
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.idea.intentions
|
||||
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import org.jetbrains.kotlin.KtNodeTypes
|
||||
import org.jetbrains.kotlin.builtins.KOTLIN_REFLECT_FQ_NAME
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames.KOTLIN_REFLECT_FQ_NAME
|
||||
import org.jetbrains.kotlin.builtins.isExtensionFunctionType
|
||||
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||
@@ -140,4 +140,4 @@ class ConvertReferenceToLambdaIntention : SelfTargetingOffsetIndependentIntentio
|
||||
companion object {
|
||||
private val SOURCE_RENDERER = IdeDescriptorRenderers.SOURCE_CODE
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ import com.intellij.openapi.util.TextRange
|
||||
import com.intellij.psi.PsiComment
|
||||
import com.intellij.psi.PsiDocumentManager
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.descriptors.CallableDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
||||
import org.jetbrains.kotlin.idea.KotlinBundle
|
||||
@@ -224,7 +225,7 @@ class SpecifyTypeExplicitlyIntention : SelfTargetingRangeIntention<KtCallableDec
|
||||
val project = declaration.project
|
||||
val expression = createTypeExpressionForTemplate(exprType, declaration, useTypesFromOverridden = true) ?: return
|
||||
|
||||
declaration.setType(KotlinBuiltIns.FQ_NAMES.any.asString())
|
||||
declaration.setType(KotlinBuiltInsNames.FqNames.any.asString())
|
||||
|
||||
PsiDocumentManager.getInstance(project).commitAllDocuments()
|
||||
PsiDocumentManager.getInstance(project).doPostponedOperationsAndUnblockDocument(editor.document)
|
||||
|
||||
@@ -9,6 +9,7 @@ import com.intellij.psi.PsiElement
|
||||
import com.intellij.psi.tree.IElementType
|
||||
import org.jetbrains.kotlin.KtNodeTypes
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.builtins.isKSuspendFunctionType
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.analyze
|
||||
@@ -294,7 +295,7 @@ private val ARRAY_OF_METHODS = setOf(ArrayFqNames.ARRAY_OF_FUNCTION) +
|
||||
fun KtCallExpression.isArrayOfMethod(): Boolean {
|
||||
val resolvedCall = resolveToCall() ?: return false
|
||||
val descriptor = resolvedCall.candidateDescriptor
|
||||
return (descriptor.containingDeclaration as? PackageFragmentDescriptor)?.fqName == KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME &&
|
||||
return (descriptor.containingDeclaration as? PackageFragmentDescriptor)?.fqName == KotlinBuiltInsNames.BUILT_INS_PACKAGE_FQ_NAME &&
|
||||
ARRAY_OF_METHODS.contains(descriptor.name)
|
||||
}
|
||||
|
||||
@@ -357,7 +358,7 @@ internal fun Sequence<PsiElement>.lastWithPersistedElementOrNull(elementShouldPe
|
||||
}
|
||||
|
||||
fun KotlinType.reflectToRegularFunctionType(): KotlinType {
|
||||
val isTypeAnnotatedWithExtensionFunctionType = annotations.findAnnotation(KotlinBuiltIns.FQ_NAMES.extensionFunctionType) != null
|
||||
val isTypeAnnotatedWithExtensionFunctionType = annotations.findAnnotation(KotlinBuiltInsNames.FqNames.extensionFunctionType) != null
|
||||
val parameterCount = if (isTypeAnnotatedWithExtensionFunctionType) arguments.size - 2 else arguments.size - 1
|
||||
val classDescriptor =
|
||||
if (isKSuspendFunctionType) builtIns.getSuspendFunction(parameterCount) else builtIns.getFunction(parameterCount)
|
||||
|
||||
+7
-7
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.idea.intentions.loopToCallChain.result
|
||||
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.descriptors.CallableDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
|
||||
@@ -138,7 +138,7 @@ class AddToCollectionTransformation(
|
||||
when (collectionKind) {
|
||||
CollectionKind.LIST -> {
|
||||
when {
|
||||
canChangeInitializerType(collectionInitialization, KotlinBuiltIns.FQ_NAMES.list, state.outerLoop) -> {
|
||||
canChangeInitializerType(collectionInitialization, KotlinBuiltInsNames.FqNames.list, state.outerLoop) -> {
|
||||
return if (argumentIsInputVariable) {
|
||||
val assignToList = AssignToListTransformation(state.outerLoop, collectionInitialization, state.lazySequence)
|
||||
TransformationMatch.Result(assignToList)
|
||||
@@ -156,7 +156,7 @@ class AddToCollectionTransformation(
|
||||
}
|
||||
}
|
||||
|
||||
canChangeInitializerType(collectionInitialization, KotlinBuiltIns.FQ_NAMES.mutableList, state.outerLoop) -> {
|
||||
canChangeInitializerType(collectionInitialization, KotlinBuiltInsNames.FqNames.mutableList, state.outerLoop) -> {
|
||||
if (argumentIsInputVariable) {
|
||||
val transformation = AssignToMutableListTransformation(state.outerLoop, collectionInitialization)
|
||||
return TransformationMatch.Result(transformation)
|
||||
@@ -167,11 +167,11 @@ class AddToCollectionTransformation(
|
||||
|
||||
CollectionKind.SET -> {
|
||||
val assignToSetTransformation = when {
|
||||
canChangeInitializerType(collectionInitialization, KotlinBuiltIns.FQ_NAMES.set, state.outerLoop) -> {
|
||||
canChangeInitializerType(collectionInitialization, KotlinBuiltInsNames.FqNames.set, state.outerLoop) -> {
|
||||
AssignToSetTransformation(state.outerLoop, collectionInitialization)
|
||||
}
|
||||
|
||||
canChangeInitializerType(collectionInitialization, KotlinBuiltIns.FQ_NAMES.mutableSet, state.outerLoop) -> {
|
||||
canChangeInitializerType(collectionInitialization, KotlinBuiltInsNames.FqNames.mutableSet, state.outerLoop) -> {
|
||||
AssignToMutableSetTransformation(state.outerLoop, collectionInitialization)
|
||||
}
|
||||
|
||||
@@ -214,13 +214,13 @@ class AddToCollectionTransformation(
|
||||
private fun KtExpression?.isRangeLiteral() = this is KtBinaryExpression && operationToken == KtTokens.RANGE
|
||||
|
||||
private fun DeclarationDescriptor.isCollectionAdd(): Boolean {
|
||||
if ((containingDeclaration as? ClassDescriptor)?.fqNameSafe == KotlinBuiltIns.FQ_NAMES.mutableCollection) {
|
||||
if ((containingDeclaration as? ClassDescriptor)?.fqNameSafe == KotlinBuiltInsNames.FqNames.mutableCollection) {
|
||||
return true
|
||||
}
|
||||
|
||||
val overrides = (this as? CallableDescriptor)?.overriddenTreeUniqueAsSequence(true) ?: return false
|
||||
return overrides.any {
|
||||
(it.containingDeclaration as? ClassDescriptor)?.fqNameSafe == KotlinBuiltIns.FQ_NAMES.mutableCollection
|
||||
(it.containingDeclaration as? ClassDescriptor)?.fqNameSafe == KotlinBuiltInsNames.FqNames.mutableCollection
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -5,23 +5,23 @@
|
||||
|
||||
package org.jetbrains.kotlin.idea.kdoc
|
||||
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns.FQ_NAMES
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames.FqNames
|
||||
import org.jetbrains.kotlin.descriptors.ClassifierDescriptor
|
||||
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
||||
|
||||
private val boringBuiltinClasses = setOf(
|
||||
FQ_NAMES.unit,
|
||||
FQ_NAMES._byte,
|
||||
FQ_NAMES._short,
|
||||
FQ_NAMES._int,
|
||||
FQ_NAMES._long,
|
||||
FQ_NAMES._char,
|
||||
FQ_NAMES._boolean,
|
||||
FQ_NAMES._float,
|
||||
FQ_NAMES._double,
|
||||
FQ_NAMES.string,
|
||||
FQ_NAMES.array,
|
||||
FQ_NAMES.any
|
||||
FqNames.unit,
|
||||
FqNames._byte,
|
||||
FqNames._short,
|
||||
FqNames._int,
|
||||
FqNames._long,
|
||||
FqNames._char,
|
||||
FqNames._boolean,
|
||||
FqNames._float,
|
||||
FqNames._double,
|
||||
FqNames.string,
|
||||
FqNames.array,
|
||||
FqNames.any
|
||||
)
|
||||
|
||||
fun ClassifierDescriptor.isBoringBuiltinClass(): Boolean = DescriptorUtils.getFqName(this) in boringBuiltinClasses
|
||||
fun ClassifierDescriptor.isBoringBuiltinClass(): Boolean = DescriptorUtils.getFqName(this) in boringBuiltinClasses
|
||||
|
||||
@@ -11,7 +11,7 @@ import com.intellij.psi.*
|
||||
import com.intellij.psi.search.GlobalSearchScope
|
||||
import com.intellij.psi.search.searches.ReferencesSearch
|
||||
import org.jetbrains.kotlin.asJava.LightClassUtil
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.descriptors.annotations.AnnotationUseSiteTarget
|
||||
import org.jetbrains.kotlin.descriptors.annotations.KotlinTarget
|
||||
import org.jetbrains.kotlin.diagnostics.Diagnostic
|
||||
@@ -151,11 +151,11 @@ private fun KtAnnotationEntry.getActualTargetList(): List<KotlinTarget> {
|
||||
}
|
||||
|
||||
private fun KtClass.addAnnotationTargets(annotationTargets: List<KotlinTarget>, psiFactory: KtPsiFactory) {
|
||||
val retentionAnnotationName = KotlinBuiltIns.FQ_NAMES.retention.shortName().asString()
|
||||
val retentionAnnotationName = KotlinBuiltInsNames.FqNames.retention.shortName().asString()
|
||||
if (annotationTargets.any { it == KotlinTarget.EXPRESSION }) {
|
||||
val retentionEntry = annotationEntries.firstOrNull { it.typeReference?.text == retentionAnnotationName }
|
||||
val newRetentionEntry = psiFactory.createAnnotationEntry(
|
||||
"@$retentionAnnotationName(${KotlinBuiltIns.FQ_NAMES.annotationRetention.shortName()}.${AnnotationRetention.SOURCE.name})"
|
||||
"@$retentionAnnotationName(${KotlinBuiltInsNames.FqNames.annotationRetention.shortName()}.${AnnotationRetention.SOURCE.name})"
|
||||
)
|
||||
if (retentionEntry == null) {
|
||||
addAnnotationEntry(newRetentionEntry)
|
||||
@@ -164,7 +164,7 @@ private fun KtClass.addAnnotationTargets(annotationTargets: List<KotlinTarget>,
|
||||
}
|
||||
}
|
||||
|
||||
val targetAnnotationName = KotlinBuiltIns.FQ_NAMES.target.shortName().asString()
|
||||
val targetAnnotationName = KotlinBuiltInsNames.FqNames.target.shortName().asString()
|
||||
val targetAnnotationEntry = annotationEntries.find { it.typeReference?.text == targetAnnotationName } ?: run {
|
||||
val text = "@$targetAnnotationName${annotationTargets.toArgumentListString()}"
|
||||
addAnnotationEntry(psiFactory.createAnnotationEntry(text))
|
||||
@@ -185,4 +185,4 @@ private fun KtClass.addAnnotationTargets(annotationTargets: List<KotlinTarget>,
|
||||
|
||||
private fun List<KotlinTarget>.toArgumentListString() = joinToString(separator = ", ", prefix = "(", postfix = ")") { it.asNameString() }
|
||||
|
||||
private fun KotlinTarget.asNameString() = "${KotlinBuiltIns.FQ_NAMES.annotationTarget.shortName().asString()}.$name"
|
||||
private fun KotlinTarget.asNameString() = "${KotlinBuiltInsNames.FqNames.annotationTarget.shortName().asString()}.$name"
|
||||
|
||||
+6
-6
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.idea.quickfix
|
||||
import com.intellij.codeInsight.intention.IntentionAction
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.openapi.project.Project
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.descriptors.annotations.KotlinTarget
|
||||
import org.jetbrains.kotlin.diagnostics.Diagnostic
|
||||
import org.jetbrains.kotlin.idea.KotlinBundle
|
||||
@@ -22,14 +22,14 @@ import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameSafe
|
||||
|
||||
object RestrictedRetentionForExpressionAnnotationFactory : KotlinIntentionActionsFactory() {
|
||||
|
||||
private val sourceRetention = "${KotlinBuiltIns.FQ_NAMES.annotationRetention.asString()}.${AnnotationRetention.SOURCE.name}"
|
||||
private val sourceRetentionAnnotation = "@${KotlinBuiltIns.FQ_NAMES.retention.asString()}($sourceRetention)"
|
||||
private val sourceRetention = "${KotlinBuiltInsNames.FqNames.annotationRetention.asString()}.${AnnotationRetention.SOURCE.name}"
|
||||
private val sourceRetentionAnnotation = "@${KotlinBuiltInsNames.FqNames.retention.asString()}($sourceRetention)"
|
||||
|
||||
override fun doCreateActions(diagnostic: Diagnostic): List<IntentionAction> {
|
||||
val annotationEntry = diagnostic.psiElement as? KtAnnotationEntry ?: return emptyList()
|
||||
val containingClass = annotationEntry.containingClass() ?: return emptyList()
|
||||
val retentionAnnotation = containingClass.annotation(KotlinBuiltIns.FQ_NAMES.retention)
|
||||
val targetAnnotation = containingClass.annotation(KotlinBuiltIns.FQ_NAMES.target)
|
||||
val retentionAnnotation = containingClass.annotation(KotlinBuiltInsNames.FqNames.retention)
|
||||
val targetAnnotation = containingClass.annotation(KotlinBuiltInsNames.FqNames.target)
|
||||
val expressionTargetArgument = if (targetAnnotation != null) findExpressionTargetArgument(targetAnnotation) else null
|
||||
|
||||
return listOfNotNull(
|
||||
@@ -114,4 +114,4 @@ object RestrictedRetentionForExpressionAnnotationFactory : KotlinIntentionAction
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ package org.jetbrains.kotlin.idea.quickfix
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.openapi.project.Project
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.codegen.ExpressionCodegen
|
||||
import org.jetbrains.kotlin.config.LanguageFeature
|
||||
import org.jetbrains.kotlin.idea.KotlinBundle
|
||||
@@ -26,10 +27,10 @@ import org.jetbrains.kotlin.types.typeUtil.isUnsignedNumberType
|
||||
import kotlin.math.floor
|
||||
|
||||
private val valueRanges = mapOf(
|
||||
KotlinBuiltIns.FQ_NAMES._byte to Byte.MIN_VALUE.toLong()..Byte.MAX_VALUE.toLong(),
|
||||
KotlinBuiltIns.FQ_NAMES._short to Short.MIN_VALUE.toLong()..Short.MAX_VALUE.toLong(),
|
||||
KotlinBuiltIns.FQ_NAMES._int to Int.MIN_VALUE.toLong()..Int.MAX_VALUE.toLong(),
|
||||
KotlinBuiltIns.FQ_NAMES._long to Long.MIN_VALUE..Long.MAX_VALUE
|
||||
KotlinBuiltInsNames.FqNames._byte to Byte.MIN_VALUE.toLong()..Byte.MAX_VALUE.toLong(),
|
||||
KotlinBuiltInsNames.FqNames._short to Short.MIN_VALUE.toLong()..Short.MAX_VALUE.toLong(),
|
||||
KotlinBuiltInsNames.FqNames._int to Int.MIN_VALUE.toLong()..Int.MAX_VALUE.toLong(),
|
||||
KotlinBuiltInsNames.FqNames._long to Long.MIN_VALUE..Long.MAX_VALUE
|
||||
)
|
||||
|
||||
class WrongPrimitiveLiteralFix(element: KtConstantExpression, type: KotlinType) : KotlinQuickFixAction<KtExpression>(element) {
|
||||
|
||||
+2
-2
@@ -9,7 +9,7 @@ import com.intellij.codeInsight.intention.IntentionAction
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.psi.PsiElement
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.diagnostics.Diagnostic
|
||||
import org.jetbrains.kotlin.diagnostics.Errors
|
||||
import org.jetbrains.kotlin.idea.KotlinBundle
|
||||
@@ -200,7 +200,7 @@ class MigrateExternalExtensionFix(declaration: KtNamedDeclaration) : KotlinQuick
|
||||
}
|
||||
|
||||
if (declaration is KtFunction) {
|
||||
declaration.addAnnotation(KotlinBuiltIns.FQ_NAMES.suppress, "\"NOTHING_TO_INLINE\"")
|
||||
declaration.addAnnotation(KotlinBuiltInsNames.FqNames.suppress, "\"NOTHING_TO_INLINE\"")
|
||||
}
|
||||
|
||||
convertNativeAnnotationToJsName(declaration, annotations)
|
||||
|
||||
+2
-1
@@ -12,6 +12,7 @@ import com.intellij.psi.PsiElement
|
||||
import com.intellij.psi.search.GlobalSearchScope
|
||||
import com.intellij.psi.search.searches.ReferencesSearch
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltInsNames
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.descriptors.impl.TypeAliasConstructorDescriptor
|
||||
import org.jetbrains.kotlin.diagnostics.Diagnostic
|
||||
@@ -79,7 +80,7 @@ abstract class DeprecatedSymbolUsageFixBase(
|
||||
contextElement: KtReferenceExpression?,
|
||||
replaceInWholeProject: Boolean
|
||||
): ReplaceWith? {
|
||||
val annotation = descriptor.annotations.findAnnotation(KotlinBuiltIns.FQ_NAMES.deprecated) ?: return null
|
||||
val annotation = descriptor.annotations.findAnnotation(KotlinBuiltInsNames.FqNames.deprecated) ?: return null
|
||||
val replaceWithValue =
|
||||
annotation.argumentValue(Deprecated::replaceWith.name)?.safeAs<AnnotationValue>()?.value ?: return null
|
||||
val pattern = replaceWithValue.argumentValue(kotlin.ReplaceWith::expression.name)?.safeAs<StringValue>()?.value ?: return null
|
||||
|
||||
Reference in New Issue
Block a user