[FIR] Expand typealiases in FirNativeObjC checkers
This commit is contained in:
committed by
Space Team
parent
f8643c90eb
commit
343b856cfc
+1
-2
@@ -44,8 +44,7 @@ object FirNativeObjCRefinementChecker : FirCallableDeclarationChecker() {
|
|||||||
val objCAnnotations = mutableListOf<FirAnnotation>()
|
val objCAnnotations = mutableListOf<FirAnnotation>()
|
||||||
val swiftAnnotations = mutableListOf<FirAnnotation>()
|
val swiftAnnotations = mutableListOf<FirAnnotation>()
|
||||||
for (annotation in annotations) {
|
for (annotation in annotations) {
|
||||||
val metaAnnotations = annotation.unexpandedConeClassLikeType?.lookupTag
|
val metaAnnotations = annotation.toAnnotationClassLikeSymbol(session)?.resolvedAnnotationsWithClassIds.orEmpty()
|
||||||
?.toSymbol(session)?.resolvedAnnotationsWithClassIds.orEmpty()
|
|
||||||
for (metaAnnotation in metaAnnotations) {
|
for (metaAnnotation in metaAnnotations) {
|
||||||
when (metaAnnotation.toAnnotationClassId(session)) {
|
when (metaAnnotation.toAnnotationClassId(session)) {
|
||||||
hidesFromObjCClassId -> {
|
hidesFromObjCClassId -> {
|
||||||
|
|||||||
+2
-2
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.fir.containingClassLookupTag
|
|||||||
import org.jetbrains.kotlin.fir.declarations.FirClass
|
import org.jetbrains.kotlin.fir.declarations.FirClass
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
|
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
|
||||||
import org.jetbrains.kotlin.fir.declarations.toAnnotationClassId
|
import org.jetbrains.kotlin.fir.declarations.toAnnotationClassId
|
||||||
|
import org.jetbrains.kotlin.fir.declarations.toAnnotationClassLikeSymbol
|
||||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotation
|
import org.jetbrains.kotlin.fir.expressions.FirAnnotation
|
||||||
import org.jetbrains.kotlin.fir.expressions.unexpandedConeClassLikeType
|
import org.jetbrains.kotlin.fir.expressions.unexpandedConeClassLikeType
|
||||||
import org.jetbrains.kotlin.fir.isIntersectionOverride
|
import org.jetbrains.kotlin.fir.isIntersectionOverride
|
||||||
@@ -83,8 +84,7 @@ object FirNativeObjCRefinementOverridesChecker : FirClassChecker() {
|
|||||||
var hasObjC = false
|
var hasObjC = false
|
||||||
var hasSwift = false
|
var hasSwift = false
|
||||||
for (annotation in resolvedAnnotationsWithClassIds) {
|
for (annotation in resolvedAnnotationsWithClassIds) {
|
||||||
val metaAnnotations = annotation.unexpandedConeClassLikeType?.lookupTag
|
val metaAnnotations = annotation.toAnnotationClassLikeSymbol(session)?.resolvedAnnotationsWithClassIds.orEmpty()
|
||||||
?.toSymbol(session)?.resolvedAnnotationsWithClassIds.orEmpty()
|
|
||||||
for (metaAnnotation in metaAnnotations) {
|
for (metaAnnotation in metaAnnotations) {
|
||||||
when (metaAnnotation.toAnnotationClassId(session)) {
|
when (metaAnnotation.toAnnotationClassId(session)) {
|
||||||
hidesFromObjCClassId -> {
|
hidesFromObjCClassId -> {
|
||||||
|
|||||||
@@ -58,7 +58,9 @@ annotation class MyRefinedAnnotationC
|
|||||||
@Retention(AnnotationRetention.BINARY)
|
@Retention(AnnotationRetention.BINARY)
|
||||||
annotation class MyRefinedAnnotationD
|
annotation class MyRefinedAnnotationD
|
||||||
|
|
||||||
@HiddenFromObjC
|
typealias HFOC = HiddenFromObjC
|
||||||
|
|
||||||
|
@HFOC
|
||||||
<!REDUNDANT_SWIFT_REFINEMENT!>@ShouldRefineInSwift<!>
|
<!REDUNDANT_SWIFT_REFINEMENT!>@ShouldRefineInSwift<!>
|
||||||
var refinedProperty: Int = 0
|
var refinedProperty: Int = 0
|
||||||
|
|
||||||
@@ -92,7 +94,7 @@ interface InterfaceB {
|
|||||||
val barA: Int
|
val barA: Int
|
||||||
@ShouldRefineInSwift
|
@ShouldRefineInSwift
|
||||||
val barB: Int
|
val barB: Int
|
||||||
@HiddenFromObjC
|
@HFOC
|
||||||
fun fooA()
|
fun fooA()
|
||||||
@HiddenFromObjC
|
@HiddenFromObjC
|
||||||
fun fooB()
|
fun fooB()
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package
|
package
|
||||||
|
|
||||||
@kotlin.native.HiddenFromObjC @kotlin.native.ShouldRefineInSwift public var refinedProperty: kotlin.Int
|
@HFOC /* = kotlin.native.HiddenFromObjC */ @kotlin.native.ShouldRefineInSwift public var refinedProperty: kotlin.Int
|
||||||
@kotlin.native.HiddenFromObjC @plugin.PluginHiddenFromObjC @kotlin.native.ShouldRefineInSwift @plugin.PluginShouldRefineInSwift public fun multipleMixedRefinementsFunction(): kotlin.Unit
|
@kotlin.native.HiddenFromObjC @plugin.PluginHiddenFromObjC @kotlin.native.ShouldRefineInSwift @plugin.PluginShouldRefineInSwift public fun multipleMixedRefinementsFunction(): kotlin.Unit
|
||||||
@kotlin.native.HiddenFromObjC @plugin.PluginHiddenFromObjC public fun multipleObjCRefinementsFunction(): kotlin.Unit
|
@kotlin.native.HiddenFromObjC @plugin.PluginHiddenFromObjC public fun multipleObjCRefinementsFunction(): kotlin.Unit
|
||||||
@kotlin.native.ShouldRefineInSwift @plugin.PluginShouldRefineInSwift public fun multipleSwiftRefinementsFunction(): kotlin.Unit
|
@kotlin.native.ShouldRefineInSwift @plugin.PluginShouldRefineInSwift public fun multipleSwiftRefinementsFunction(): kotlin.Unit
|
||||||
@@ -75,7 +75,7 @@ public interface InterfaceB {
|
|||||||
public abstract val barA: kotlin.Int
|
public abstract val barA: kotlin.Int
|
||||||
@kotlin.native.ShouldRefineInSwift public abstract val barB: kotlin.Int
|
@kotlin.native.ShouldRefineInSwift public abstract val barB: kotlin.Int
|
||||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||||
@kotlin.native.HiddenFromObjC public abstract fun fooA(): kotlin.Unit
|
@HFOC /* = kotlin.native.HiddenFromObjC */ public abstract fun fooA(): kotlin.Unit
|
||||||
@kotlin.native.HiddenFromObjC public abstract fun fooB(): kotlin.Unit
|
@kotlin.native.HiddenFromObjC public abstract fun fooB(): kotlin.Unit
|
||||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||||
@@ -108,6 +108,7 @@ public interface InterfaceB {
|
|||||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||||
}
|
}
|
||||||
|
public typealias HFOC = kotlin.native.HiddenFromObjC
|
||||||
|
|
||||||
package kotlin {
|
package kotlin {
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user