extract StandartNames.NAME constant
This commit is contained in:
+2
-2
@@ -5,6 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.fir.analysis.jvm.checkers.declaration
|
||||
|
||||
import org.jetbrains.kotlin.builtins.StandardNames
|
||||
import org.jetbrains.kotlin.diagnostics.DiagnosticReporter
|
||||
import org.jetbrains.kotlin.diagnostics.reportOn
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.context.CheckerContext
|
||||
@@ -24,11 +25,10 @@ import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.StandardClassIds
|
||||
|
||||
object FirJvmNameChecker : FirBasicDeclarationChecker() {
|
||||
private val NAME = Name.identifier("name")
|
||||
|
||||
override fun check(declaration: FirDeclaration, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
val jvmName = declaration.findJvmNameAnnotation() ?: return
|
||||
val name = jvmName.findArgumentByName(NAME) ?: return
|
||||
val name = jvmName.findArgumentByName(StandardNames.NAME) ?: return
|
||||
|
||||
if (name.typeRef.coneType != context.session.builtinTypes.stringType.type) {
|
||||
return
|
||||
|
||||
+2
-3
@@ -5,6 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.fir.analysis.jvm.checkers.expression
|
||||
|
||||
import org.jetbrains.kotlin.builtins.StandardNames
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.context.CheckerContext
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.expression.FirAnnotationChecker
|
||||
import org.jetbrains.kotlin.diagnostics.DiagnosticReporter
|
||||
@@ -17,19 +18,17 @@ import org.jetbrains.kotlin.fir.types.ConeClassLikeType
|
||||
import org.jetbrains.kotlin.fir.types.coneTypeSafe
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.isValidJavaFqName
|
||||
|
||||
object FirJvmPackageNameAnnotationsChecker : FirAnnotationChecker() {
|
||||
|
||||
private val jvmPackageNameClassId = ClassId.topLevel(FqName("kotlin.jvm.JvmPackageName"))
|
||||
private val stringParameterName = Name.identifier("name")
|
||||
|
||||
override fun check(expression: FirAnnotation, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
val lookupTag = expression.annotationTypeRef.coneTypeSafe<ConeClassLikeType>()?.lookupTag ?: return
|
||||
if (lookupTag.classId != jvmPackageNameClassId) return
|
||||
|
||||
val nameValue = expression.getStringArgument(stringParameterName) ?: return
|
||||
val nameValue = expression.getStringArgument(StandardNames.NAME) ?: return
|
||||
if (nameValue.isEmpty()) {
|
||||
reporter.reportOn(expression.source, FirJvmErrors.JVM_PACKAGE_NAME_CANNOT_BE_EMPTY, context)
|
||||
} else if (!isValidJavaFqName(nameValue)) {
|
||||
|
||||
+2
-2
@@ -5,6 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.fir.analysis.native.checkers
|
||||
|
||||
import org.jetbrains.kotlin.builtins.StandardNames
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.diagnostics.DiagnosticReporter
|
||||
import org.jetbrains.kotlin.diagnostics.reportOn
|
||||
@@ -35,7 +36,6 @@ import org.jetbrains.kotlin.name.Name
|
||||
object FirNativeObjCNameChecker : FirBasicDeclarationChecker() {
|
||||
|
||||
private val objCNameClassId = ClassId.topLevel(FqName("kotlin.native.ObjCName"))
|
||||
private val nameName = Name.identifier("name")
|
||||
private val swiftNameName = Name.identifier("swiftName")
|
||||
private val exactName = Name.identifier("exact")
|
||||
|
||||
@@ -101,7 +101,7 @@ object FirNativeObjCNameChecker : FirBasicDeclarationChecker() {
|
||||
class ObjCName(
|
||||
val annotation: FirAnnotation
|
||||
) {
|
||||
val name: String? = annotation.getStringArgument(nameName)
|
||||
val name: String? = annotation.getStringArgument(StandardNames.NAME)
|
||||
val swiftName: String? = annotation.getStringArgument(swiftNameName)
|
||||
val exact: Boolean = annotation.getBooleanArgument(exactName) ?: false
|
||||
|
||||
|
||||
+2
-1
@@ -5,6 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.fir.declarations
|
||||
|
||||
import org.jetbrains.kotlin.builtins.StandardNames
|
||||
import org.jetbrains.kotlin.descriptors.annotations.AnnotationUseSiteTarget
|
||||
import org.jetbrains.kotlin.fir.FirAnnotationContainer
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
@@ -246,7 +247,7 @@ fun FirGetClassCall.getTargetType(): ConeKotlinType? {
|
||||
fun FirAnnotationContainer.getJvmNameFromAnnotation(session: FirSession, target: AnnotationUseSiteTarget? = null): String? {
|
||||
val annotationCalls = getAnnotationsByClassId(StandardClassIds.Annotations.JvmName, session)
|
||||
return annotationCalls.firstNotNullOfOrNull { call ->
|
||||
call.getStringArgument(StandardClassIds.Annotations.ParameterNames.jvmNameName)
|
||||
call.getStringArgument(StandardNames.NAME)
|
||||
?.takeIf { target == null || call.useSiteTarget == target }
|
||||
}
|
||||
}
|
||||
|
||||
+2
-1
@@ -13,6 +13,7 @@ import org.jetbrains.kotlin.backend.common.lower.LoweredStatementOrigins
|
||||
import org.jetbrains.kotlin.ir.backend.js.JsStatementOrigins
|
||||
import org.jetbrains.kotlin.backend.common.lower.createIrBuilder
|
||||
import org.jetbrains.kotlin.backend.common.runOnFilePostfix
|
||||
import org.jetbrains.kotlin.builtins.StandardNames
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
@@ -419,7 +420,7 @@ class CallableReferenceLowering(private val context: CommonBackendContext) : Bod
|
||||
|
||||
val superProperty = superFunctionInterface.declarations
|
||||
.filterIsInstance<IrProperty>()
|
||||
.single { it.name == Name.identifier("name") } // In K/Wasm interfaces can have fake overridden properties from Any
|
||||
.single { it.name == StandardNames.NAME } // In K/Wasm interfaces can have fake overridden properties from Any
|
||||
|
||||
val supperGetter = superProperty.getter
|
||||
?: compilationException(
|
||||
|
||||
Reference in New Issue
Block a user