[Web] Move common ids from WasmStandardClassIds to WebCommonStandardClassIds
This commit is contained in:
committed by
Space Team
parent
910835af2d
commit
c1fa0a3e8c
+2
-2
@@ -13,7 +13,7 @@ import org.jetbrains.kotlin.fir.expressions.FirFunctionCall
|
||||
import org.jetbrains.kotlin.fir.expressions.FirReturnExpression
|
||||
import org.jetbrains.kotlin.fir.expressions.impl.FirSingleExpressionBlock
|
||||
import org.jetbrains.kotlin.fir.references.toResolvedCallableSymbol
|
||||
import org.jetbrains.kotlin.name.WasmStandardClassIds
|
||||
import org.jetbrains.kotlin.name.WebCommonStandardClassIds
|
||||
|
||||
fun FirSimpleFunction.hasValidJsCodeBody(): Boolean =
|
||||
body?.isValidJsCodeBody() == true
|
||||
@@ -44,5 +44,5 @@ private fun FirExpression.isJsCodeCall(): Boolean {
|
||||
val symbol = calleeReference.toResolvedCallableSymbol()
|
||||
?: return false
|
||||
|
||||
return symbol.callableId == WasmStandardClassIds.Callables.Js
|
||||
return symbol.callableId == WebCommonStandardClassIds.Callables.Js
|
||||
}
|
||||
|
||||
+3
-3
@@ -12,7 +12,7 @@ import org.jetbrains.kotlin.fir.declarations.FirSimpleFunction
|
||||
import org.jetbrains.kotlin.fir.declarations.hasAnnotation
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.visibility
|
||||
import org.jetbrains.kotlin.fir.resolve.providers.firProvider
|
||||
import org.jetbrains.kotlin.name.WasmStandardClassIds
|
||||
import org.jetbrains.kotlin.name.WebCommonStandardClassIds
|
||||
|
||||
fun isJsExportedDeclaration(declaration: FirDeclaration, session: FirSession): Boolean {
|
||||
if (declaration !is FirSimpleFunction)
|
||||
@@ -21,9 +21,9 @@ fun isJsExportedDeclaration(declaration: FirDeclaration, session: FirSession): B
|
||||
if (declaration.visibility != Visibilities.Public)
|
||||
return false
|
||||
|
||||
if (declaration.hasAnnotation(WasmStandardClassIds.Annotations.JsExport, session))
|
||||
if (declaration.hasAnnotation(WebCommonStandardClassIds.Annotations.JsExport, session))
|
||||
return true
|
||||
|
||||
val containerFile = session.firProvider.getFirCallableContainerFile(declaration.symbol)
|
||||
return containerFile != null && containerFile.hasAnnotation(WasmStandardClassIds.Annotations.JsExport, session)
|
||||
return containerFile != null && containerFile.hasAnnotation(WebCommonStandardClassIds.Annotations.JsExport, session)
|
||||
}
|
||||
+2
-1
@@ -19,6 +19,7 @@ import org.jetbrains.kotlin.fir.declarations.hasAnnotation
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.isEffectivelyExternal
|
||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotation
|
||||
import org.jetbrains.kotlin.name.WasmStandardClassIds
|
||||
import org.jetbrains.kotlin.name.WebCommonStandardClassIds
|
||||
|
||||
object FirWasmExportAnnotationChecker : FirBasicDeclarationChecker() {
|
||||
override fun check(declaration: FirDeclaration, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
@@ -29,7 +30,7 @@ object FirWasmExportAnnotationChecker : FirBasicDeclarationChecker() {
|
||||
reporter.reportOn(annotation.source, FirWasmErrors.NESTED_WASM_EXPORT, context)
|
||||
}
|
||||
|
||||
if (declaration.annotations.hasAnnotation(WasmStandardClassIds.Annotations.JsExport, context.session)) {
|
||||
if (declaration.annotations.hasAnnotation(WebCommonStandardClassIds.Annotations.JsExport, context.session)) {
|
||||
reporter.reportOn(declaration.source, FirWasmErrors.JS_AND_WASM_EXPORTS_ON_SAME_DECLARATION, context)
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -15,7 +15,7 @@ import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.*
|
||||
import org.jetbrains.kotlin.fir.symbols.FirBasedSymbol
|
||||
import org.jetbrains.kotlin.name.CallableId
|
||||
import org.jetbrains.kotlin.name.WasmStandardClassIds
|
||||
import org.jetbrains.kotlin.name.WebCommonStandardClassIds
|
||||
|
||||
object FirWasmExternalChecker : FirWebCommonExternalChecker() {
|
||||
override fun isNativeOrEffectivelyExternal(symbol: FirBasedSymbol<*>, session: FirSession): Boolean {
|
||||
@@ -47,7 +47,7 @@ object FirWasmExternalChecker : FirWebCommonExternalChecker() {
|
||||
}
|
||||
|
||||
override fun isDefinedExternallyCallableId(callableId: CallableId): Boolean =
|
||||
callableId == WasmStandardClassIds.Callables.JsDefinedExternally
|
||||
callableId == WebCommonStandardClassIds.Callables.JsDefinedExternally
|
||||
|
||||
override fun hasExternalLikeAnnotations(declaration: FirDeclaration, session: FirSession): Boolean =
|
||||
false
|
||||
|
||||
+2
-2
@@ -15,13 +15,13 @@ import org.jetbrains.kotlin.fir.declarations.utils.isEffectivelyExternal
|
||||
import org.jetbrains.kotlin.fir.expressions.FirStatement
|
||||
import org.jetbrains.kotlin.fir.expressions.calleeReference
|
||||
import org.jetbrains.kotlin.fir.references.toResolvedCallableSymbol
|
||||
import org.jetbrains.kotlin.name.WasmStandardClassIds
|
||||
import org.jetbrains.kotlin.name.WebCommonStandardClassIds
|
||||
|
||||
object FirWasmDefinedExternallyCallChecker : FirBasicExpressionChecker() {
|
||||
override fun check(expression: FirStatement, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
val symbol = expression.calleeReference?.toResolvedCallableSymbol() ?: return
|
||||
|
||||
if (symbol.callableId != WasmStandardClassIds.Callables.JsDefinedExternally) {
|
||||
if (symbol.callableId != WebCommonStandardClassIds.Callables.JsDefinedExternally) {
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -18,13 +18,13 @@ import org.jetbrains.kotlin.fir.declarations.utils.isSuspend
|
||||
import org.jetbrains.kotlin.fir.expressions.FirFunctionCall
|
||||
import org.jetbrains.kotlin.fir.references.toResolvedCallableSymbol
|
||||
import org.jetbrains.kotlin.js.common.isValidES5Identifier
|
||||
import org.jetbrains.kotlin.name.WasmStandardClassIds
|
||||
import org.jetbrains.kotlin.name.WebCommonStandardClassIds
|
||||
|
||||
object FirWasmJsCodeCallChecker : FirFunctionCallChecker() {
|
||||
override fun check(expression: FirFunctionCall, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
val symbol = expression.calleeReference.toResolvedCallableSymbol() ?: return
|
||||
|
||||
if (symbol.callableId != WasmStandardClassIds.Callables.Js) {
|
||||
if (symbol.callableId != WebCommonStandardClassIds.Callables.Js) {
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
+2
-4
@@ -21,12 +21,10 @@ import org.jetbrains.kotlin.fir.references.toResolvedCallableSymbol
|
||||
import org.jetbrains.kotlin.fir.types.isString
|
||||
import org.jetbrains.kotlin.fir.types.resolvedType
|
||||
import org.jetbrains.kotlin.fir.visitors.FirVisitorVoid
|
||||
import org.jetbrains.kotlin.name.CallableId
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.WebCommonStandardClassIds
|
||||
|
||||
object FirJsCodeConstantArgumentChecker : FirFunctionCallChecker() {
|
||||
private val jsCodeCallableId = CallableId(FqName("kotlin.js"), Name.identifier("js"))
|
||||
private val jsCodeCallableId = WebCommonStandardClassIds.Callables.Js
|
||||
|
||||
override fun check(expression: FirFunctionCall, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
if (expression.calleeReference.toResolvedCallableSymbol()?.callableId != jsCodeCallableId) {
|
||||
|
||||
@@ -8,22 +8,9 @@ package org.jetbrains.kotlin.name
|
||||
import org.jetbrains.kotlin.name.StandardClassIds.BASE_KOTLIN_PACKAGE
|
||||
|
||||
object WasmStandardClassIds {
|
||||
val BASE_JS_PACKAGE = BASE_KOTLIN_PACKAGE.child(Name.identifier("js"))
|
||||
val BASE_WASM_PACKAGE = BASE_KOTLIN_PACKAGE.child(Name.identifier("wasm"))
|
||||
|
||||
object Annotations {
|
||||
@JvmField
|
||||
val JsQualifier = "JsQualifier".jsId()
|
||||
|
||||
@JvmField
|
||||
val JsModule = "JsModule".jsId()
|
||||
|
||||
@JvmField
|
||||
val JsName = "JsName".jsId()
|
||||
|
||||
@JvmField
|
||||
val JsExport = "JsExport".jsId()
|
||||
|
||||
@JvmField
|
||||
val WasmImport = "WasmImport".wasmId()
|
||||
|
||||
@@ -33,20 +20,8 @@ object WasmStandardClassIds {
|
||||
@JvmField
|
||||
val JsFun = "JsFun".baseId()
|
||||
}
|
||||
|
||||
object Callables {
|
||||
@JvmField
|
||||
val JsDefinedExternally = "definedExternally".callableId(BASE_JS_PACKAGE)
|
||||
|
||||
@JvmField
|
||||
val Js = "js".callableId(BASE_JS_PACKAGE)
|
||||
}
|
||||
}
|
||||
|
||||
private fun String.baseId() = ClassId(StandardClassIds.BASE_KOTLIN_PACKAGE, Name.identifier(this))
|
||||
private fun String.baseId() = ClassId(BASE_KOTLIN_PACKAGE, Name.identifier(this))
|
||||
|
||||
private fun String.jsId() = ClassId(WasmStandardClassIds.BASE_JS_PACKAGE, Name.identifier(this))
|
||||
|
||||
private fun String.wasmId() = ClassId(WasmStandardClassIds.BASE_WASM_PACKAGE, Name.identifier(this))
|
||||
|
||||
private fun String.callableId(packageName: FqName) = CallableId(packageName, Name.identifier(this))
|
||||
private fun String.wasmId() = ClassId(WasmStandardClassIds.BASE_WASM_PACKAGE, Name.identifier(this))
|
||||
Reference in New Issue
Block a user