Skip to content

Commit 310556e

Browse files
authored
Remove all deprecated APIs from the compiler plugin. (#1476)
1 parent 64f1096 commit 310556e

File tree

7 files changed

+240
-203
lines changed

7 files changed

+240
-203
lines changed

packages/plugin-compiler/src/main/kotlin/io/realm/kotlin/compiler/AccessorModifierIrGeneration.kt

Lines changed: 68 additions & 70 deletions
Large diffs are not rendered by default.

packages/plugin-compiler/src/main/kotlin/io/realm/kotlin/compiler/Identifiers.kt

Lines changed: 62 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@
1616

1717
package io.realm.kotlin.compiler
1818

19-
import io.realm.kotlin.compiler.FqNames.CLASS_APP_CONFIGURATION
2019
import io.realm.kotlin.compiler.FqNames.PACKAGE_MONGODB
2120
import io.realm.kotlin.compiler.FqNames.PACKAGE_MONGODB_INTERNAL
21+
import org.jetbrains.kotlin.name.CallableId
2222
import org.jetbrains.kotlin.name.ClassId
2323
import org.jetbrains.kotlin.name.FqName
2424
import org.jetbrains.kotlin.name.Name
@@ -86,69 +86,79 @@ internal object Names {
8686
}
8787

8888
internal object FqNames {
89+
val PACKAGE_ANNOTATIONS = FqName("io.realm.kotlin.types.annotations")
90+
val PACKAGE_KBSON = FqName("org.mongodb.kbson")
91+
val PACKAGE_KOTLIN_COLLECTIONS = FqName("kotlin.collections")
92+
val PACKAGE_KOTLIN_REFLECT = FqName("kotlin.reflect")
93+
val PACKAGE_TYPES = FqName("io.realm.kotlin.types")
94+
val PACKAGE_REALM_INTEROP = FqName("io.realm.kotlin.internal.interop")
95+
val PACKAGE_REALM_INTERNAL = FqName("io.realm.kotlin.internal")
96+
val PACKAGE_MONGODB = FqName("io.realm.kotlin.mongodb")
97+
val PACKAGE_MONGODB_INTERNAL = FqName("io.realm.kotlin.mongodb.internal")
98+
}
99+
100+
object ClassIds {
101+
89102
// TODO we can replace with RealmObject::class.java.canonicalName if we make the runtime_api available as a compile time only dependency for the compiler-plugin
90103
val REALM_NATIVE_POINTER = FqName("io.realm.kotlin.internal.interop.NativePointer")
91-
val REALM_OBJECT_INTERNAL_INTERFACE = FqName("io.realm.kotlin.internal.RealmObjectInternal")
104+
val REALM_OBJECT_INTERNAL_INTERFACE = ClassId(FqNames.PACKAGE_REALM_INTERNAL, Name.identifier("RealmObjectInternal"))
105+
106+
val REALM_MODEL_COMPANION = ClassId(FqNames.PACKAGE_REALM_INTERNAL, Name.identifier("RealmObjectCompanion"))
107+
val REALM_OBJECT_HELPER = ClassId(FqNames.PACKAGE_REALM_INTERNAL, Name.identifier("RealmObjectHelper"))
108+
val REALM_CLASS_IMPL = ClassId(FqName("io.realm.kotlin.internal.schema"), Name.identifier("RealmClassImpl"))
109+
val OBJECT_REFERENCE_CLASS = ClassId(FqNames.PACKAGE_REALM_INTERNAL, Name.identifier("RealmObjectReference"))
92110

93-
val REALM_MODEL_COMPANION = FqName("io.realm.kotlin.internal.RealmObjectCompanion")
94-
val REALM_OBJECT_HELPER = FqName("io.realm.kotlin.internal.RealmObjectHelper")
95-
val REALM_CLASS_IMPL = FqName("io.realm.kotlin.internal.schema.RealmClassImpl")
96-
val OBJECT_REFERENCE_CLASS = FqName("io.realm.kotlin.internal.RealmObjectReference")
111+
val BASE_REALM_OBJECT_INTERFACE = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("BaseRealmObject"))
112+
val REALM_OBJECT_INTERFACE = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("RealmObject"))
113+
val TYPED_REALM_OBJECT_INTERFACE = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("TypedRealmObject"))
114+
val EMBEDDED_OBJECT_INTERFACE = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("EmbeddedRealmObject"))
115+
val ASYMMETRIC_OBJECT_INTERFACE = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("AsymmetricRealmObject"))
97116

98-
val BASE_REALM_OBJECT_INTERFACE = FqName("io.realm.kotlin.types.BaseRealmObject")
99-
val REALM_OBJECT_INTERFACE = FqName("io.realm.kotlin.types.RealmObject")
100-
val TYPED_REALM_OBJECT_INTERFACE = FqName("io.realm.kotlin.types.TypedRealmObject")
101-
val EMBEDDED_OBJECT_INTERFACE = FqName("io.realm.kotlin.types.EmbeddedRealmObject")
102-
val ASYMMETRIC_OBJECT_INTERFACE = FqName("io.realm.kotlin.types.AsymmetricRealmObject")
117+
val CLASS_APP_CONFIGURATION = ClassId(FqNames.PACKAGE_MONGODB, Name.identifier("AppConfiguration"))
103118

104119
// External visible interface of Realm objects
105-
val KOTLIN_COLLECTIONS_SET = FqName("kotlin.collections.Set")
106-
val KOTLIN_COLLECTIONS_LIST = FqName("kotlin.collections.List")
107-
val KOTLIN_COLLECTIONS_LISTOF = FqName("kotlin.collections.listOf")
108-
val KOTLIN_COLLECTIONS_MAP = FqName("kotlin.collections.Map")
109-
val KOTLIN_COLLECTIONS_MAPOF = FqName("kotlin.collections.mapOf")
110-
val KOTLIN_REFLECT_KMUTABLEPROPERTY1 = FqName("kotlin.reflect.KMutableProperty1")
111-
val KOTLIN_REFLECT_KPROPERTY1 = FqName("kotlin.reflect.KProperty1")
112-
val KOTLIN_PAIR = FqName("kotlin.Pair")
120+
val KOTLIN_COLLECTIONS_SET = ClassId(FqNames.PACKAGE_KOTLIN_COLLECTIONS, Name.identifier("Set"))
121+
val KOTLIN_COLLECTIONS_LIST = ClassId(FqNames.PACKAGE_KOTLIN_COLLECTIONS, Name.identifier("List"))
122+
val KOTLIN_COLLECTIONS_LISTOF = CallableId(FqNames.PACKAGE_KOTLIN_COLLECTIONS, Name.identifier("listOf"))
123+
val KOTLIN_COLLECTIONS_MAP = ClassId(FqNames.PACKAGE_KOTLIN_COLLECTIONS, Name.identifier("Map"))
124+
val KOTLIN_COLLECTIONS_MAPOF = CallableId(FqNames.PACKAGE_KOTLIN_COLLECTIONS, Name.identifier("mapOf"))
125+
val KOTLIN_REFLECT_KMUTABLEPROPERTY1 = ClassId(FqNames.PACKAGE_KOTLIN_REFLECT, Name.identifier("KMutableProperty1"))
126+
val KOTLIN_REFLECT_KPROPERTY1 = ClassId(FqNames.PACKAGE_KOTLIN_REFLECT, Name.identifier("KProperty1"))
127+
val KOTLIN_PAIR = ClassId(FqName("kotlin"), Name.identifier("Pair"))
113128

114129
// Schema related types
115-
val CLASS_INFO = FqName("io.realm.kotlin.internal.interop.ClassInfo")
116-
val PROPERTY_INFO = FqName("io.realm.kotlin.internal.interop.PropertyInfo")
117-
val PROPERTY_TYPE = FqName("io.realm.kotlin.internal.interop.PropertyType")
118-
val COLLECTION_TYPE = FqName("io.realm.kotlin.internal.interop.CollectionType")
119-
val PRIMARY_KEY_ANNOTATION = FqName("io.realm.kotlin.types.annotations.PrimaryKey")
120-
val INDEX_ANNOTATION = FqName("io.realm.kotlin.types.annotations.Index")
121-
val FULLTEXT_ANNOTATION = FqName("io.realm.kotlin.types.annotations.FullText")
122-
val IGNORE_ANNOTATION = FqName("io.realm.kotlin.types.annotations.Ignore")
123-
val PERSISTED_NAME_ANNOTATION = FqName("io.realm.kotlin.types.annotations.PersistedName")
124-
val TRANSIENT_ANNOTATION = FqName("kotlin.jvm.Transient")
125-
val MODEL_OBJECT_ANNOTATION = FqName("io.realm.kotlin.internal.platform.ModelObject")
126-
val PROPERTY_INFO_CREATE = FqName("io.realm.kotlin.internal.schema.createPropertyInfo")
127-
val CLASS_KIND_TYPE = FqName("io.realm.kotlin.schema.RealmClassKind")
130+
val CLASS_INFO = ClassId(FqNames.PACKAGE_REALM_INTEROP, Name.identifier("ClassInfo"))
131+
val PROPERTY_INFO = ClassId(FqNames.PACKAGE_REALM_INTEROP, Name.identifier("PropertyInfo"))
132+
val PROPERTY_TYPE = ClassId(FqNames.PACKAGE_REALM_INTEROP, Name.identifier("PropertyType"))
133+
val COLLECTION_TYPE = ClassId(FqNames.PACKAGE_REALM_INTEROP, Name.identifier("CollectionType"))
134+
val PRIMARY_KEY_ANNOTATION = ClassId(FqNames.PACKAGE_ANNOTATIONS, Name.identifier("PrimaryKey"))
135+
val INDEX_ANNOTATION = ClassId(FqNames.PACKAGE_ANNOTATIONS, Name.identifier("Index"))
136+
val FULLTEXT_ANNOTATION = ClassId(FqNames.PACKAGE_ANNOTATIONS, Name.identifier("FullText"))
137+
val IGNORE_ANNOTATION = ClassId(FqNames.PACKAGE_ANNOTATIONS, Name.identifier("Ignore"))
138+
val PERSISTED_NAME_ANNOTATION = ClassId(FqNames.PACKAGE_ANNOTATIONS, Name.identifier("PersistedName"))
139+
val TRANSIENT_ANNOTATION = ClassId(FqName("kotlin.jvm"), Name.identifier("Transient"))
140+
val MODEL_OBJECT_ANNOTATION = ClassId(FqName("io.realm.kotlin.internal.platform"), Name.identifier("ModelObject"))
141+
val PROPERTY_INFO_CREATE = CallableId(FqName("io.realm.kotlin.internal.schema"), Name.identifier("createPropertyInfo"))
142+
val CLASS_KIND_TYPE = ClassId(FqName("io.realm.kotlin.schema"), Name.identifier("RealmClassKind"))
128143

129144
// Realm data types
130-
val REALM_LIST = FqName("io.realm.kotlin.types.RealmList")
131-
val REALM_SET = FqName("io.realm.kotlin.types.RealmSet")
132-
val REALM_DICTIONARY = FqName("io.realm.kotlin.types.RealmDictionary")
133-
val REALM_INSTANT = FqName("io.realm.kotlin.types.RealmInstant")
134-
val REALM_BACKLINKS = FqName("io.realm.kotlin.types.BacklinksDelegate")
135-
val REALM_EMBEDDED_BACKLINKS = FqName("io.realm.kotlin.types.EmbeddedBacklinksDelegate")
136-
val REALM_OBJECT_ID = FqName("io.realm.kotlin.types.ObjectId")
137-
val KBSON_OBJECT_ID = FqName("org.mongodb.kbson.BsonObjectId")
138-
val KBSON_DECIMAL128 = FqName("org.mongodb.kbson.BsonDecimal128")
139-
val REALM_UUID = FqName("io.realm.kotlin.types.RealmUUID")
140-
val REALM_MUTABLE_INTEGER = FqName("io.realm.kotlin.types.MutableRealmInt")
141-
val REALM_ANY = FqName("io.realm.kotlin.types.RealmAny")
142-
143-
val PACKAGE_MONGODB = FqName("io.realm.kotlin.mongodb")
144-
val PACKAGE_MONGODB_INTERNAL = FqName("io.realm.kotlin.mongodb.internal")
145-
val CLASS_APP_CONFIGURATION = FqName("io.realm.kotlin.mongodb.AppConfiguration")
146-
}
147-
148-
object ClassIds {
145+
val REALM_LIST = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("RealmList"))
146+
val REALM_SET = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("RealmSet"))
147+
val REALM_DICTIONARY = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("RealmDictionary"))
148+
val REALM_INSTANT = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("RealmInstant"))
149+
val REALM_BACKLINKS = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("BacklinksDelegate"))
150+
val REALM_EMBEDDED_BACKLINKS = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("EmbeddedBacklinksDelegate"))
151+
val REALM_OBJECT_ID = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("ObjectId"))
152+
val KBSON_OBJECT_ID = ClassId(FqNames.PACKAGE_KBSON, Name.identifier("BsonObjectId"))
153+
val KBSON_DECIMAL128 = ClassId(FqNames.PACKAGE_KBSON, Name.identifier("BsonDecimal128"))
154+
val REALM_UUID = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("RealmUUID"))
155+
val REALM_MUTABLE_INTEGER = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("MutableRealmInt"))
156+
val REALM_ANY = ClassId(FqNames.PACKAGE_TYPES, Name.identifier("RealmAny"))
157+
158+
// Sync types
149159
val APP = ClassId(PACKAGE_MONGODB, Name.identifier("App"))
150160
val APP_IMPL = ClassId(PACKAGE_MONGODB_INTERNAL, Name.identifier("AppImpl"))
151161
val APP_CONFIGURATION = ClassId(PACKAGE_MONGODB, Name.identifier("AppConfiguration"))
152162
val APP_CONFIGURATION_IMPL = ClassId(PACKAGE_MONGODB_INTERNAL, Name.identifier("AppConfigurationImpl"))
153-
val APP_CONFIGURATION_BUILDER = ClassId(CLASS_APP_CONFIGURATION, Name.identifier("Builder"))
163+
val APP_CONFIGURATION_BUILDER = ClassId(FqName("io.realm.kotlin.mongodb.AppConfiguration"), FqName("Builder"), true)
154164
}

0 commit comments

Comments
 (0)