diff --git a/.github/actions/run-android-device-farm-test/action.yml b/.github/actions/run-android-device-farm-test/action.yml
index 524aac798c..3f2b02c0ea 100644
--- a/.github/actions/run-android-device-farm-test/action.yml
+++ b/.github/actions/run-android-device-farm-test/action.yml
@@ -78,4 +78,4 @@ runs:
shell: pwsh
if: always()
- name: Device Farm Output
\ No newline at end of file
+ name: Device Farm Output
diff --git a/.github/workflows/include-integration-tests.yml b/.github/workflows/include-integration-tests.yml
index e39b2613e0..6f23b27bbb 100644
--- a/.github/workflows/include-integration-tests.yml
+++ b/.github/workflows/include-integration-tests.yml
@@ -200,19 +200,13 @@ jobs:
gradle-plugin-integration:
strategy:
matrix:
- type: [current, currentK2, gradle6, gradle71, gradle75]
+ type: [current, gradle72, gradle75]
include:
- type: current
path: integration-tests/gradle/current
arguments: integrationTest
- - type: currentK2
- path: integration-tests/gradle/current
- arguments: -Pkotlin.experimental.tryK2=true integrationTest
- - type: gradle6
- path: integration-tests/gradle/gradle6-test
- arguments: integrationTest
- - type: gradle71
- path: integration-tests/gradle/gradle71-test
+ - type: gradle72
+ path: integration-tests/gradle/gradle72-test
arguments: integrationTest
- type: gradle75
path: integration-tests/gradle/gradle75-test
@@ -290,11 +284,14 @@ jobs:
gradle-plugin-integration-java-17:
strategy:
matrix:
- type: [gradle8]
+ type: [gradle8, gradle85]
include:
- type: gradle8
path: integration-tests/gradle/gradle8-test
arguments: integrationTest
+ - type: gradle85
+ path: integration-tests/gradle/gradle85-test
+ arguments: integrationTest
runs-on: macos-12
steps:
- uses: actions/checkout@v3
diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml
index 3f94add458..4a67c1f0a4 100644
--- a/.github/workflows/pr.yml
+++ b/.github/workflows/pr.yml
@@ -1643,7 +1643,7 @@ jobs:
endsWith(needs.check-cache.outputs.version-label, '-SNAPSHOT') &&
!contains(needs.*.result, 'failure') &&
!contains(needs.*.result, 'cancelled') &&
- (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/releases')
+ (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/releases' || github.ref == 'refs/heads/release/k2')
secrets: inherit
with:
@@ -1706,10 +1706,10 @@ jobs:
!endsWith(needs.check-cache.outputs.version-label, '-SNAPSHOT') &&
!contains(needs.*.result, 'failure') &&
!contains(needs.*.result, 'cancelled') &&
- (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/releases') &&
+ (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/releases' || github.ref == 'refs/heads/release/k2') &&
(needs.check-release-build.outputs.is_publish_build == 'true')
secrets: inherit
with:
version-label: ${{ needs.check-cache.outputs.version-label }}
- packages-sha-label: ${{ needs.check-cache.outputs.packages-sha }}
\ No newline at end of file
+ packages-sha-label: ${{ needs.check-cache.outputs.packages-sha }}
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 7f8efbbb4c..456b9b30d8 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -28,19 +28,23 @@ This release will bump the Realm file format 24. Opening a file with an older fo
* File format: Generates Realms with file format v24 (reads and upgrades file format v10 or later).
* Realm Studio 15.0.0 or above is required to open Realms created by this version.
* This release is compatible with the following Kotlin releases:
- * Kotlin 1.9.0 and above. Support for experimental K2-compilation with `kotlin.experimental.tryK2=true`.
+ * Kotlin 2.0.0 and above. Support for experimental K2-compilation with `kotlin.experimental.tryK2=true`.
* Ktor 2.1.2 and above.
* Coroutines 1.7.0 and above.
* AtomicFu 0.18.3 and above.
* The new memory model only. See https://github.com/realm/realm-kotlin#kotlin-memory-model-and-coroutine-compatibility
-* Minimum Kbson 0.3.0.
-* Minimum Gradle version: 6.8.3.
-* Minimum Android Gradle Plugin version: 4.1.3.
+* Minimum Kbson 0.4.0.
+* Minimum Gradle version: 7.2.
+* Minimum Android Gradle Plugin version: 7.1.3.
* Minimum Android SDK: 16.
* Minimum R8: 8.0.34.
### Internal
* Updated to Realm Core 14.7.0 commit c280bdb17522323d5c30dc32a2b9efc9dc80ca3b.
+* Changed Kotlin compiler testing framework to https://github.com/zacsweers/kotlin-compile-testing
+
+
+## 1.16.0 (2024-05-01)
## 1.16.0 (2024-05-01)
diff --git a/README.md b/README.md
index 0d0375c782..d9c00250bb 100644
--- a/README.md
+++ b/README.md
@@ -328,6 +328,10 @@ SDK supports. In the matrix below, you will find the minimum supported version f
| Realm Version | Requirements |
|---------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| 2.0.0 |
- Kotlin 2.0.0+
- AtomicFu 0.18.3+.
- Ktor 2.1.2+.
- Coroutines 1.7.0+.
- Gradle 7.2 - 8.5
- The new memory model only.
|
+| 1.16.0 | - Kotlin 1.9.0+
- AtomicFu 0.18.3+.
- Ktor 2.1.2+.
- Coroutines 1.7.0+.
- Gradle 6.8.3 - 8.5
- The new memory model only.
|
+| 1.15.0 | - Kotlin 1.9.0+
- AtomicFu 0.18.3+.
- Ktor 2.1.2+.
- Coroutines 1.7.0+.
- Gradle 6.8.3 - 8.5
- The new memory model only.
|
+| 1.14.0 | - Kotlin 1.9.0+
- AtomicFu 0.18.3+.
- Ktor 2.1.2+.
- Coroutines 1.7.0+.
- Gradle 6.8.3 - 8.5
- The new memory model only.
|
| 1.13.0 | - Kotlin 1.9.0+
- AtomicFu 0.18.3+.
- Ktor 2.1.2+.
- Coroutines 1.7.0+.
- Gradle 6.8.3 - 8.5
- The new memory model only.
|
| 1.12.0 | - Kotlin 1.8.20+
- AtomicFu 0.18.3+.
- Ktor 2.1.2+.
- Coroutines 1.7.0+.
- Gradle 6.8.3 - 7.6.1.
- The new memory model only.
|
| 1.11.0 | - Kotlin 1.8.0+
- AtomicFu 0.18.3+.
- Ktor 2.1.2+.
- Coroutines 1.7.0+.
- Gradle 6.8.3 - 7.6.1.
- The new memory model only.
|
diff --git a/benchmarks/gradle.properties b/benchmarks/gradle.properties
index 3211eb8167..f50e6ffda4 100644
--- a/benchmarks/gradle.properties
+++ b/benchmarks/gradle.properties
@@ -6,8 +6,3 @@ kotlin.code.style=official
#Android
android.useAndroidX=true
-
-#MPP
-kotlin.mpp.enableGranularSourceSetsMetadata=true
-kotlin.native.enableDependencyPropagation=false
-kotlin.mpp.enableCInteropCommonization=true
\ No newline at end of file
diff --git a/buildSrc/src/main/kotlin/Config.kt b/buildSrc/src/main/kotlin/Config.kt
index 40bef56fb8..4d4e046e52 100644
--- a/buildSrc/src/main/kotlin/Config.kt
+++ b/buildSrc/src/main/kotlin/Config.kt
@@ -123,10 +123,10 @@ object Versions {
const val junit = "4.13.2" // https://mvnrepository.com/artifact/junit/junit
const val kbson = "0.4.0" // https://github.com/mongodb/kbson
// When updating the Kotlin version, also remember to update /examples/min-android-sample/build.gradle.kts
- const val kotlin = "1.9.0" // https://github.com/JetBrains/kotlin and https://kotlinlang.org/docs/releases.html#release-details
+ const val kotlin = "2.0.0" // https://github.com/JetBrains/kotlin and https://kotlinlang.org/docs/releases.html#release-details
const val kotlinJvmTarget = "1.8" // Which JVM bytecode version is kotlin compiled to.
- const val latestKotlin = "1.9.20" // https://kotlinlang.org/docs/eap.html#build-details
- const val kotlinCompileTesting = "1.5.0" // https://github.com/tschuchortdev/kotlin-compile-testing
+ const val latestKotlin = "2.0.0" // https://kotlinlang.org/docs/eap.html#build-details
+ const val kotlinCompileTesting = "0.5.0-alpha07" // https://github.com/zacsweers/kotlin-compile-testing
const val ktlint = "0.45.2" // https://github.com/pinterest/ktlint
const val ktor = "2.3.7" // https://github.com/ktorio/ktor
const val multidex = "2.0.1" // https://developer.android.com/jetpack/androidx/releases/multidex
diff --git a/examples/min-android-sample/app/build.gradle.kts b/examples/min-android-sample/app/build.gradle.kts
index a25c817345..620b2db651 100644
--- a/examples/min-android-sample/app/build.gradle.kts
+++ b/examples/min-android-sample/app/build.gradle.kts
@@ -27,4 +27,4 @@ dependencies {
implementation(project(":shared"))
implementation("com.android.support:appcompat-v7:28.0.0")
implementation("com.android.support.constraint:constraint-layout:2.0.4")
-}
\ No newline at end of file
+}
diff --git a/examples/min-android-sample/build.gradle.kts b/examples/min-android-sample/build.gradle.kts
index b3e600001b..f28a88011d 100644
--- a/examples/min-android-sample/build.gradle.kts
+++ b/examples/min-android-sample/build.gradle.kts
@@ -14,8 +14,8 @@ buildscript {
mavenCentral()
}
dependencies {
- classpath("com.android.tools.build:gradle:4.2.2")
- classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0")
+ classpath("com.android.tools.build:gradle:7.1.3")
+ classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:2.0.0")
classpath("io.realm.kotlin:gradle-plugin:${rootProject.extra["realmVersion"]}")
}
}
diff --git a/examples/min-android-sample/gradle.properties b/examples/min-android-sample/gradle.properties
index 6fbc901e89..f39955e794 100644
--- a/examples/min-android-sample/gradle.properties
+++ b/examples/min-android-sample/gradle.properties
@@ -16,5 +16,3 @@ kotlin.code.style=official
android.useAndroidX=true
org.gradle.configuration-cache=true
-
-kotlin.mpp.androidSourceSetLayoutVersion=1
diff --git a/examples/min-android-sample/gradle/wrapper/gradle-wrapper.properties b/examples/min-android-sample/gradle/wrapper/gradle-wrapper.properties
index 8cf6eb5ad2..a0f7639f7d 100644
--- a/examples/min-android-sample/gradle/wrapper/gradle-wrapper.properties
+++ b/examples/min-android-sample/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.3-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/examples/min-android-sample/shared/build.gradle.kts b/examples/min-android-sample/shared/build.gradle.kts
index 5bbcec4351..4c3ffbcc20 100644
--- a/examples/min-android-sample/shared/build.gradle.kts
+++ b/examples/min-android-sample/shared/build.gradle.kts
@@ -18,7 +18,7 @@ kotlin {
implementation("io.realm.kotlin:library-base:${rootProject.ext["realmVersion"]}")
}
}
- val androidTest by getting
+ val androidInstrumentedTest by getting
val jvmMain by getting
}
}
@@ -30,4 +30,4 @@ android {
minSdkVersion(16)
targetSdkVersion(31)
}
-}
\ No newline at end of file
+}
diff --git a/integration-tests/gradle/gradle6-test/gradle/wrapper/gradle-wrapper.properties b/integration-tests/gradle/gradle6-test/gradle/wrapper/gradle-wrapper.properties
deleted file mode 100644
index 8cf6eb5ad2..0000000000
--- a/integration-tests/gradle/gradle6-test/gradle/wrapper/gradle-wrapper.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-distributionBase=GRADLE_USER_HOME
-distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.3-all.zip
-zipStoreBase=GRADLE_USER_HOME
-zipStorePath=wrapper/dists
diff --git a/integration-tests/gradle/gradle6-test/settings.gradle.kts b/integration-tests/gradle/gradle6-test/settings.gradle.kts
deleted file mode 100644
index 4159ca0d1d..0000000000
--- a/integration-tests/gradle/gradle6-test/settings.gradle.kts
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright 2022 Realm Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-rootProject.name = "gradle6-plugin-test"
-
-pluginManagement {
- repositories {
- gradlePluginPortal()
- google()
- mavenCentral()
- maven("file://${rootDir.absolutePath}/../../../packages/build/m2-buildrepo")
- }
-}
-dependencyResolutionManagement {
- repositories {
- google()
- mavenCentral()
- maven("file://${rootDir.absolutePath}/../../../packages/build/m2-buildrepo")
- }
-}
-
-include(":single-platform")
-include(":multi-platform")
diff --git a/integration-tests/gradle/gradle71-test/build.gradle.kts b/integration-tests/gradle/gradle71-test/build.gradle.kts
deleted file mode 100644
index b3c36fdf42..0000000000
--- a/integration-tests/gradle/gradle71-test/build.gradle.kts
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright 2022 Realm Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// Explicitly adding the plugin to the classpath as it makes it easier to control the version
-// centrally (don't need version in the 'plugins' block). Further, snapshots are not published with
-// marker interface so would need to be added to the classpath manually anyway.
-buildscript {
- extra["realmVersion"] = file("${rootProject.rootDir.absolutePath}/../../../buildSrc/src/main/kotlin/Config.kt")
- .readLines()
- .first { it.contains("const val version") }
- .let {
- it.substringAfter("\"").substringBefore("\"")
- }
-
- repositories {
- maven(url = "file://${rootProject.rootDir.absolutePath}/../../../packages/build/m2-buildrepo")
- gradlePluginPortal()
- google()
- mavenCentral()
- }
- dependencies {
- classpath("com.android.tools.build:gradle:7.0.0")
- classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0")
- classpath("io.realm.kotlin:gradle-plugin:${rootProject.extra["realmVersion"]}")
- }
-}
-group = "io.realm.test"
-version = rootProject.extra["realmVersion"]
-
-// Attempt to make an easy entry point for verifying all modules. Maybe we could do a better split
-// when migrating to GHA.
-tasks.register("integrationTest") {
- dependsOn(":single-platform:connectedDebugAndroidTest")
- dependsOn(":multi-platform:cleanAllTests")
- dependsOn(":multi-platform:jvmTest")
- dependsOn(":multi-platform:nativeTest")
-}
diff --git a/integration-tests/gradle/gradle71-test/gradle.properties b/integration-tests/gradle/gradle71-test/gradle.properties
deleted file mode 100644
index d6568c183f..0000000000
--- a/integration-tests/gradle/gradle71-test/gradle.properties
+++ /dev/null
@@ -1,31 +0,0 @@
-#
-# Copyright 2022 Realm Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
-# or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-kotlin.code.style=official
-
-org.gradle.jvmargs=-Xmx4096M
-
-android.useAndroidX=true
-android.enableJetifier=true
-
-kotlin.mpp.stability.nowarn=true
-
-# Enable new memory model as default
-kotlin.native.binary.memoryModel=experimental
-kotlin.native.binary.freezing=disabled
-
-org.gradle.configuration-cache=true
diff --git a/integration-tests/gradle/gradle71-test/gradle/wrapper/gradle-wrapper.jar b/integration-tests/gradle/gradle71-test/gradle/wrapper/gradle-wrapper.jar
deleted file mode 100644
index 249e5832f0..0000000000
Binary files a/integration-tests/gradle/gradle71-test/gradle/wrapper/gradle-wrapper.jar and /dev/null differ
diff --git a/integration-tests/gradle/gradle71-test/gradlew b/integration-tests/gradle/gradle71-test/gradlew
deleted file mode 100755
index a69d9cb6c2..0000000000
--- a/integration-tests/gradle/gradle71-test/gradlew
+++ /dev/null
@@ -1,240 +0,0 @@
-#!/bin/sh
-
-#
-# Copyright © 2015-2021 the original authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-##############################################################################
-#
-# Gradle start up script for POSIX generated by Gradle.
-#
-# Important for running:
-#
-# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
-# noncompliant, but you have some other compliant shell such as ksh or
-# bash, then to run this script, type that shell name before the whole
-# command line, like:
-#
-# ksh Gradle
-#
-# Busybox and similar reduced shells will NOT work, because this script
-# requires all of these POSIX shell features:
-# * functions;
-# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
-# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
-# * compound commands having a testable exit status, especially «case»;
-# * various built-in commands including «command», «set», and «ulimit».
-#
-# Important for patching:
-#
-# (2) This script targets any POSIX shell, so it avoids extensions provided
-# by Bash, Ksh, etc; in particular arrays are avoided.
-#
-# The "traditional" practice of packing multiple parameters into a
-# space-separated string is a well documented source of bugs and security
-# problems, so this is (mostly) avoided, by progressively accumulating
-# options in "$@", and eventually passing that to Java.
-#
-# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
-# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
-# see the in-line comments for details.
-#
-# There are tweaks for specific operating systems such as AIX, CygWin,
-# Darwin, MinGW, and NonStop.
-#
-# (3) This script is generated from the Groovy template
-# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
-# within the Gradle project.
-#
-# You can find Gradle at https://github.com/gradle/gradle/.
-#
-##############################################################################
-
-# Attempt to set APP_HOME
-
-# Resolve links: $0 may be a link
-app_path=$0
-
-# Need this for daisy-chained symlinks.
-while
- APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
- [ -h "$app_path" ]
-do
- ls=$( ls -ld "$app_path" )
- link=${ls#*' -> '}
- case $link in #(
- /*) app_path=$link ;; #(
- *) app_path=$APP_HOME$link ;;
- esac
-done
-
-APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
-
-APP_NAME="Gradle"
-APP_BASE_NAME=${0##*/}
-
-# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
-
-# Use the maximum available, or set MAX_FD != -1 to use that value.
-MAX_FD=maximum
-
-warn () {
- echo "$*"
-} >&2
-
-die () {
- echo
- echo "$*"
- echo
- exit 1
-} >&2
-
-# OS specific support (must be 'true' or 'false').
-cygwin=false
-msys=false
-darwin=false
-nonstop=false
-case "$( uname )" in #(
- CYGWIN* ) cygwin=true ;; #(
- Darwin* ) darwin=true ;; #(
- MSYS* | MINGW* ) msys=true ;; #(
- NONSTOP* ) nonstop=true ;;
-esac
-
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
-
-
-# Determine the Java command to use to start the JVM.
-if [ -n "$JAVA_HOME" ] ; then
- if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
- # IBM's JDK on AIX uses strange locations for the executables
- JAVACMD=$JAVA_HOME/jre/sh/java
- else
- JAVACMD=$JAVA_HOME/bin/java
- fi
- if [ ! -x "$JAVACMD" ] ; then
- die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
- fi
-else
- JAVACMD=java
- which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
-fi
-
-# Increase the maximum file descriptors if we can.
-if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
- case $MAX_FD in #(
- max*)
- MAX_FD=$( ulimit -H -n ) ||
- warn "Could not query maximum file descriptor limit"
- esac
- case $MAX_FD in #(
- '' | soft) :;; #(
- *)
- ulimit -n "$MAX_FD" ||
- warn "Could not set maximum file descriptor limit to $MAX_FD"
- esac
-fi
-
-# Collect all arguments for the java command, stacking in reverse order:
-# * args from the command line
-# * the main class name
-# * -classpath
-# * -D...appname settings
-# * --module-path (only if needed)
-# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
-
-# For Cygwin or MSYS, switch paths to Windows format before running java
-if "$cygwin" || "$msys" ; then
- APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
- CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
-
- JAVACMD=$( cygpath --unix "$JAVACMD" )
-
- # Now convert the arguments - kludge to limit ourselves to /bin/sh
- for arg do
- if
- case $arg in #(
- -*) false ;; # don't mess with options #(
- /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
- [ -e "$t" ] ;; #(
- *) false ;;
- esac
- then
- arg=$( cygpath --path --ignore --mixed "$arg" )
- fi
- # Roll the args list around exactly as many times as the number of
- # args, so each arg winds up back in the position where it started, but
- # possibly modified.
- #
- # NB: a `for` loop captures its iteration list before it begins, so
- # changing the positional parameters here affects neither the number of
- # iterations, nor the values presented in `arg`.
- shift # remove old arg
- set -- "$@" "$arg" # push replacement arg
- done
-fi
-
-# Collect all arguments for the java command;
-# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
-# shell script including quotes and variable substitutions, so put them in
-# double quotes to make sure that they get re-expanded; and
-# * put everything else in single quotes, so that it's not re-expanded.
-
-set -- \
- "-Dorg.gradle.appname=$APP_BASE_NAME" \
- -classpath "$CLASSPATH" \
- org.gradle.wrapper.GradleWrapperMain \
- "$@"
-
-# Stop when "xargs" is not available.
-if ! command -v xargs >/dev/null 2>&1
-then
- die "xargs is not available"
-fi
-
-# Use "xargs" to parse quoted args.
-#
-# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
-#
-# In Bash we could simply go:
-#
-# readarray ARGS < <( xargs -n1 <<<"$var" ) &&
-# set -- "${ARGS[@]}" "$@"
-#
-# but POSIX shell has neither arrays nor command substitution, so instead we
-# post-process each arg (as a line of input to sed) to backslash-escape any
-# character that might be a shell metacharacter, then use eval to reverse
-# that process (while maintaining the separation between arguments), and wrap
-# the whole thing up as a single "set" statement.
-#
-# This will of course break if any of these variables contains a newline or
-# an unmatched quote.
-#
-
-eval "set -- $(
- printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
- xargs -n1 |
- sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
- tr '\n' ' '
- )" '"$@"'
-
-exec "$JAVACMD" "$@"
diff --git a/integration-tests/gradle/gradle71-test/gradlew.bat b/integration-tests/gradle/gradle71-test/gradlew.bat
deleted file mode 100644
index 53a6b238d4..0000000000
--- a/integration-tests/gradle/gradle71-test/gradlew.bat
+++ /dev/null
@@ -1,91 +0,0 @@
-@rem
-@rem Copyright 2015 the original author or authors.
-@rem
-@rem Licensed under the Apache License, Version 2.0 (the "License");
-@rem you may not use this file except in compliance with the License.
-@rem You may obtain a copy of the License at
-@rem
-@rem https://www.apache.org/licenses/LICENSE-2.0
-@rem
-@rem Unless required by applicable law or agreed to in writing, software
-@rem distributed under the License is distributed on an "AS IS" BASIS,
-@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-@rem See the License for the specific language governing permissions and
-@rem limitations under the License.
-@rem
-
-@if "%DEBUG%"=="" @echo off
-@rem ##########################################################################
-@rem
-@rem Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%"=="" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Resolve any "." and ".." in APP_HOME to make it shorter.
-for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if %ERRORLEVEL% equ 0 goto execute
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto execute
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
-
-:end
-@rem End local scope for the variables with windows NT shell
-if %ERRORLEVEL% equ 0 goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-set EXIT_CODE=%ERRORLEVEL%
-if %EXIT_CODE% equ 0 set EXIT_CODE=1
-if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
-exit /b %EXIT_CODE%
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
diff --git a/integration-tests/gradle/gradle71-test/multi-platform/build.gradle.kts b/integration-tests/gradle/gradle71-test/multi-platform/build.gradle.kts
deleted file mode 100644
index e7be178e61..0000000000
--- a/integration-tests/gradle/gradle71-test/multi-platform/build.gradle.kts
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright 2022 Realm Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-plugins {
- kotlin("multiplatform")
- id("io.realm.kotlin")
-}
-
-kotlin {
- jvm()
-
- val hostOs = System.getProperty("os.name")
- val isMingwX64 = hostOs.startsWith("Windows")
- val nativeTarget = when {
- hostOs == "Mac OS X" -> {
- val hostArch = System.getProperty("os.arch")
- when (hostArch) {
- "aarch64" -> macosArm64("native")
- "x86_64" -> macosX64("native")
- else -> throw GradleException("Unrecognized architecture: $hostArch")
- }
- }
- hostOs == "Linux" -> linuxX64("native")
- isMingwX64 -> mingwX64("native")
- else -> throw GradleException("Host OS is not supported in Kotlin/Native.")
- }
-
- sourceSets {
- val commonMain by getting {
- dependencies {
- implementation("io.realm.kotlin:library-base:${rootProject.extra["realmVersion"]}")
- }
- }
- val commonTest by getting {
- dependencies {
- implementation(kotlin("test"))
- }
- }
- }
-}
diff --git a/integration-tests/gradle/gradle71-test/multi-platform/src/commonMain/kotlin/io/realm/test/multiplatform/model/TestClass.kt b/integration-tests/gradle/gradle71-test/multi-platform/src/commonMain/kotlin/io/realm/test/multiplatform/model/TestClass.kt
deleted file mode 100644
index 93c7e6f35a..0000000000
--- a/integration-tests/gradle/gradle71-test/multi-platform/src/commonMain/kotlin/io/realm/test/multiplatform/model/TestClass.kt
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Copyright 2022 Realm Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.realm.test.multiplatform.model
-
-import io.realm.kotlin.types.RealmObject
-import io.realm.kotlin.types.annotations.PrimaryKey
-
-class TestClass : RealmObject {
- @PrimaryKey
- var id: Long = 0
-
- var text: String = "INIT"
-}
diff --git a/integration-tests/gradle/gradle71-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/CrudTests.kt b/integration-tests/gradle/gradle71-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/CrudTests.kt
deleted file mode 100644
index 1e81a97e78..0000000000
--- a/integration-tests/gradle/gradle71-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/CrudTests.kt
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright 2022 Realm Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.realm.test.multiplatform
-
-import io.realm.kotlin.Realm
-import io.realm.kotlin.RealmConfiguration
-import io.realm.kotlin.ext.query
-import io.realm.test.multiplatform.model.TestClass
-import io.realm.test.multiplatform.util.platform.PlatformUtils
-import kotlin.test.AfterTest
-import kotlin.test.BeforeTest
-import kotlin.test.Test
-import kotlin.test.assertEquals
-import kotlin.test.fail
-
-class CrudTests {
-
- private lateinit var tmpDir: String
- private lateinit var realm: Realm
-
- @BeforeTest
- fun setup() {
- tmpDir = PlatformUtils.createTempDir("integration_test")
- realm = RealmConfiguration.Builder(setOf(TestClass::class))
- .directory(tmpDir)
- .build()
- .let { Realm.open(it) }
- }
-
- @AfterTest
- fun teadDown() {
- if (this::realm.isInitialized && !realm.isClosed()) {
- realm.close()
- }
- PlatformUtils.deleteTempDir(tmpDir)
- }
-
- @Test
- fun crud() {
- // CREATE
- realm.writeBlocking {
- copyToRealm(
- TestClass().apply {
- id = 1
- text = "TEST"
- }
- )
- }
-
- // READ
- val testObject = realm.query("id = 1").find().single()
- assertEquals("TEST", testObject.text)
-
- // UPDATE
- realm.writeBlocking {
- findLatest(testObject)?.apply {
- text = "UPDATED"
- }
- }
- val updatedTestObject = realm.query("id = 1").find().single()
- assertEquals("UPDATED", updatedTestObject.text)
-
- // DELETE
- realm.writeBlocking {
- findLatest(updatedTestObject)?.let { delete(it) }
- ?: fail("Couldn't find test object")
- }
- assertEquals(0, realm.query("id = 1").find().size)
- }
-}
diff --git a/integration-tests/gradle/gradle71-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/Utils.kt b/integration-tests/gradle/gradle71-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/Utils.kt
deleted file mode 100644
index 210e403226..0000000000
--- a/integration-tests/gradle/gradle71-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/Utils.kt
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright 2022 Realm Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.realm.test.multiplatform.util
-
-object Utils {
- fun createRandomString(length: Int): String {
- val allowedChars = ('A'..'Z') + ('a'..'z') + ('0'..'9')
- return (1..length)
- .map { allowedChars.random() }
- .joinToString("")
- }
-}
diff --git a/integration-tests/gradle/gradle71-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt b/integration-tests/gradle/gradle71-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
deleted file mode 100644
index d4cd211930..0000000000
--- a/integration-tests/gradle/gradle71-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright 2022 Realm Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.realm.test.multiplatform.util.platform
-
-import io.realm.test.multiplatform.util.Utils
-
-expect object PlatformUtils {
- fun createTempDir(prefix: String = Utils.createRandomString(16)): String
- fun deleteTempDir(path: String)
-}
diff --git a/integration-tests/gradle/gradle71-test/multi-platform/src/jvmTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt b/integration-tests/gradle/gradle71-test/multi-platform/src/jvmTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
deleted file mode 100644
index 087c037b70..0000000000
--- a/integration-tests/gradle/gradle71-test/multi-platform/src/jvmTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2022 Realm Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.realm.test.multiplatform.util.platform
-
-import java.io.File
-import java.nio.file.Files
-import kotlin.io.path.absolutePathString
-
-actual object PlatformUtils {
- actual fun createTempDir(prefix: String): String {
- return Files.createTempDirectory("$prefix-jvm_tests").absolutePathString()
- }
-
- actual fun deleteTempDir(path: String) {
- File(path).deleteRecursively()
- }
-}
diff --git a/integration-tests/gradle/gradle71-test/multi-platform/src/nativeTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt b/integration-tests/gradle/gradle71-test/multi-platform/src/nativeTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
deleted file mode 100644
index 9b5b5b4fca..0000000000
--- a/integration-tests/gradle/gradle71-test/multi-platform/src/nativeTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright 2022 Realm Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-@file:OptIn(ExperimentalForeignApi::class)
-
-package io.realm.test.multiplatform.util.platform
-
-import kotlinx.cinterop.ExperimentalForeignApi
-import kotlinx.cinterop.cstr
-
-actual object PlatformUtils {
- actual fun createTempDir(prefix: String): String {
- // X is a special char which will be replace by mkdtemp template
- val mask = prefix.replace('X', 'Z', ignoreCase = true)
- val path = "${platform.Foundation.NSTemporaryDirectory()}$mask-native_tests"
- platform.posix.mkdtemp(path.cstr)
- return path
- }
-
- actual fun deleteTempDir(path: String) {
- platform.Foundation.NSFileManager.defaultManager.removeItemAtURL(
- platform.Foundation.NSURL(fileURLWithPath = path),
- null
- )
- }
-}
diff --git a/integration-tests/gradle/gradle71-test/single-platform/build.gradle.kts b/integration-tests/gradle/gradle71-test/single-platform/build.gradle.kts
deleted file mode 100644
index 76261f5cba..0000000000
--- a/integration-tests/gradle/gradle71-test/single-platform/build.gradle.kts
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright 2022 Realm Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-plugins {
- id("com.android.library")
- id("org.jetbrains.kotlin.android")
- id("io.realm.kotlin")
-}
-
-android {
- compileSdk = 33
-
- defaultConfig {
- minSdk = 16
- targetSdk = 33
- multiDexEnabled = true
-
- testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
- consumerProguardFiles("consumer-rules.pro")
- }
-
- compileOptions {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
- }
- kotlinOptions {
- jvmTarget = "1.8"
- }
-}
-
-dependencies {
- implementation("androidx.appcompat:appcompat:1.5.1")
- implementation("androidx.multidex:multidex:2.0.1")
- implementation("io.realm.kotlin:library-base:${rootProject.extra["realmVersion"]}")
- testImplementation("junit:junit:4.13.2")
- androidTestImplementation("androidx.test.ext:junit:1.1.3")
- androidTestImplementation("androidx.test.espresso:espresso-core:3.4.0")
-}
diff --git a/integration-tests/gradle/gradle71-test/single-platform/consumer-rules.pro b/integration-tests/gradle/gradle71-test/single-platform/consumer-rules.pro
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/integration-tests/gradle/gradle71-test/single-platform/proguard-rules.pro b/integration-tests/gradle/gradle71-test/single-platform/proguard-rules.pro
deleted file mode 100644
index f1b424510d..0000000000
--- a/integration-tests/gradle/gradle71-test/single-platform/proguard-rules.pro
+++ /dev/null
@@ -1,21 +0,0 @@
-# Add project specific ProGuard rules here.
-# You can control the set of applied configuration files using the
-# proguardFiles setting in build.gradle.
-#
-# For more details, see
-# http://developer.android.com/guide/developing/tools/proguard.html
-
-# If your project uses WebView with JS, uncomment the following
-# and specify the fully qualified class name to the JavaScript interface
-# class:
-#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
-# public *;
-#}
-
-# Uncomment this to preserve the line number information for
-# debugging stack traces.
-#-keepattributes SourceFile,LineNumberTable
-
-# If you keep the line number information, uncomment this to
-# hide the original source file name.
-#-renamesourcefileattribute SourceFile
diff --git a/integration-tests/gradle/gradle71-test/single-platform/src/androidTest/kotlin/io/realm/test/singleplatform/CrudTests.kt b/integration-tests/gradle/gradle71-test/single-platform/src/androidTest/kotlin/io/realm/test/singleplatform/CrudTests.kt
deleted file mode 100644
index 524504cfa0..0000000000
--- a/integration-tests/gradle/gradle71-test/single-platform/src/androidTest/kotlin/io/realm/test/singleplatform/CrudTests.kt
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright 2022 Realm Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.realm.test.singleplatform
-
-import io.realm.kotlin.Realm
-import io.realm.kotlin.RealmConfiguration
-import io.realm.kotlin.ext.query
-import io.realm.test.singleplatform.model.TestClass
-import junit.framework.TestCase.assertEquals
-import junit.framework.TestCase.fail
-import org.junit.After
-import org.junit.Before
-import org.junit.Test
-import java.io.File
-import java.nio.file.Files
-import kotlin.io.path.absolutePathString
-
-class CrudTests {
-
- private lateinit var tmpDir: String
- private lateinit var realm: Realm
-
- @Before
- fun setup() {
- tmpDir = Files.createTempDirectory("android_tests").absolutePathString()
- realm = RealmConfiguration.Builder(setOf(TestClass::class))
- .directory(tmpDir)
- .build()
- .let { Realm.open(it) }
- }
-
- @After
- fun tearDown() {
- if (this::realm.isInitialized && !realm.isClosed()) {
- realm.close()
- }
- File(tmpDir).deleteRecursively()
- }
-
- @Test
- fun crud() {
- // CREATE
- realm.writeBlocking {
- copyToRealm(
- TestClass().apply {
- id = 1
- text = "TEST"
- }
- )
- }
- // READ
- val testObject = realm.query("id = 1").find().single()
- assertEquals("TEST", testObject.text)
- // UPDATE
- realm.writeBlocking {
- findLatest(testObject)?.apply {
- text = "UPDATED"
- }
- }
- val updatedTestObject = realm.query("id = 1").find().single()
- assertEquals("UPDATED", updatedTestObject.text)
-
- realm.writeBlocking {
- findLatest(updatedTestObject)?.let { delete(it) }
- ?: fail("Couldn't find test object")
- }
-
- assertEquals(0, realm.query("id = 1").find().size)
- }
-}
diff --git a/integration-tests/gradle/gradle71-test/single-platform/src/main/AndroidManifest.xml b/integration-tests/gradle/gradle71-test/single-platform/src/main/AndroidManifest.xml
deleted file mode 100644
index 171018716c..0000000000
--- a/integration-tests/gradle/gradle71-test/single-platform/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/integration-tests/gradle/gradle71-test/single-platform/src/main/java/io/realm/test/singleplatform/model/Pojo.java b/integration-tests/gradle/gradle71-test/single-platform/src/main/java/io/realm/test/singleplatform/model/Pojo.java
deleted file mode 100644
index 1254a34e34..0000000000
--- a/integration-tests/gradle/gradle71-test/single-platform/src/main/java/io/realm/test/singleplatform/model/Pojo.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package io.realm.test.singleplatform.model;
-
-// This class is only added to verify that we can access the Realm Model classes from plain old
-// Java source. See issue for further details https://github.com/realm/realm-kotlin/issues/1256
-public class Pojo {
- TestClass o = new TestClass();
-}
diff --git a/integration-tests/gradle/gradle71-test/single-platform/src/main/kotlin/io/realm/test/singleplatform/model/TestClass.kt b/integration-tests/gradle/gradle71-test/single-platform/src/main/kotlin/io/realm/test/singleplatform/model/TestClass.kt
deleted file mode 100644
index 5adfd22c38..0000000000
--- a/integration-tests/gradle/gradle71-test/single-platform/src/main/kotlin/io/realm/test/singleplatform/model/TestClass.kt
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Copyright 2022 Realm Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.realm.test.singleplatform.model
-
-import io.realm.kotlin.types.RealmObject
-import io.realm.kotlin.types.annotations.PrimaryKey
-
-class TestClass : RealmObject {
- @PrimaryKey
- var id: Long = 0
-
- var text: String = "INIT"
-}
diff --git a/integration-tests/gradle/gradle6-test/build.gradle.kts b/integration-tests/gradle/gradle72-test/build.gradle.kts
similarity index 96%
rename from integration-tests/gradle/gradle6-test/build.gradle.kts
rename to integration-tests/gradle/gradle72-test/build.gradle.kts
index 99c8f1e0a2..377571d6c5 100644
--- a/integration-tests/gradle/gradle6-test/build.gradle.kts
+++ b/integration-tests/gradle/gradle72-test/build.gradle.kts
@@ -33,8 +33,8 @@ buildscript {
mavenCentral()
}
dependencies {
- classpath("com.android.tools.build:gradle:4.2.2")
- classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0")
+ classpath("com.android.tools.build:gradle:7.1.3")
+ classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:2.0.0")
classpath("io.realm.kotlin:gradle-plugin:${rootProject.extra["realmVersion"]}")
}
}
diff --git a/integration-tests/gradle/gradle6-test/gradle.properties b/integration-tests/gradle/gradle72-test/gradle.properties
similarity index 100%
rename from integration-tests/gradle/gradle6-test/gradle.properties
rename to integration-tests/gradle/gradle72-test/gradle.properties
diff --git a/integration-tests/gradle/gradle6-test/gradle/wrapper/gradle-wrapper.jar b/integration-tests/gradle/gradle72-test/gradle/wrapper/gradle-wrapper.jar
similarity index 100%
rename from integration-tests/gradle/gradle6-test/gradle/wrapper/gradle-wrapper.jar
rename to integration-tests/gradle/gradle72-test/gradle/wrapper/gradle-wrapper.jar
diff --git a/integration-tests/gradle/gradle71-test/gradle/wrapper/gradle-wrapper.properties b/integration-tests/gradle/gradle72-test/gradle/wrapper/gradle-wrapper.properties
similarity index 93%
rename from integration-tests/gradle/gradle71-test/gradle/wrapper/gradle-wrapper.properties
rename to integration-tests/gradle/gradle72-test/gradle/wrapper/gradle-wrapper.properties
index 1acc777d74..a0f7639f7d 100644
--- a/integration-tests/gradle/gradle71-test/gradle/wrapper/gradle-wrapper.properties
+++ b/integration-tests/gradle/gradle72-test/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/integration-tests/gradle/gradle6-test/gradlew b/integration-tests/gradle/gradle72-test/gradlew
similarity index 100%
rename from integration-tests/gradle/gradle6-test/gradlew
rename to integration-tests/gradle/gradle72-test/gradlew
diff --git a/integration-tests/gradle/gradle6-test/gradlew.bat b/integration-tests/gradle/gradle72-test/gradlew.bat
similarity index 100%
rename from integration-tests/gradle/gradle6-test/gradlew.bat
rename to integration-tests/gradle/gradle72-test/gradlew.bat
diff --git a/integration-tests/gradle/gradle6-test/multi-platform/build.gradle.kts b/integration-tests/gradle/gradle72-test/multi-platform/build.gradle.kts
similarity index 100%
rename from integration-tests/gradle/gradle6-test/multi-platform/build.gradle.kts
rename to integration-tests/gradle/gradle72-test/multi-platform/build.gradle.kts
diff --git a/integration-tests/gradle/gradle6-test/multi-platform/src/commonMain/kotlin/io/realm/test/multiplatform/model/TestClass.kt b/integration-tests/gradle/gradle72-test/multi-platform/src/commonMain/kotlin/io/realm/test/multiplatform/model/TestClass.kt
similarity index 100%
rename from integration-tests/gradle/gradle6-test/multi-platform/src/commonMain/kotlin/io/realm/test/multiplatform/model/TestClass.kt
rename to integration-tests/gradle/gradle72-test/multi-platform/src/commonMain/kotlin/io/realm/test/multiplatform/model/TestClass.kt
diff --git a/integration-tests/gradle/gradle6-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/CrudTests.kt b/integration-tests/gradle/gradle72-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/CrudTests.kt
similarity index 100%
rename from integration-tests/gradle/gradle6-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/CrudTests.kt
rename to integration-tests/gradle/gradle72-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/CrudTests.kt
diff --git a/integration-tests/gradle/gradle6-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/Utils.kt b/integration-tests/gradle/gradle72-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/Utils.kt
similarity index 100%
rename from integration-tests/gradle/gradle6-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/Utils.kt
rename to integration-tests/gradle/gradle72-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/Utils.kt
diff --git a/integration-tests/gradle/gradle6-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt b/integration-tests/gradle/gradle72-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
similarity index 100%
rename from integration-tests/gradle/gradle6-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
rename to integration-tests/gradle/gradle72-test/multi-platform/src/commonTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
diff --git a/integration-tests/gradle/gradle6-test/multi-platform/src/jvmTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt b/integration-tests/gradle/gradle72-test/multi-platform/src/jvmTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
similarity index 100%
rename from integration-tests/gradle/gradle6-test/multi-platform/src/jvmTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
rename to integration-tests/gradle/gradle72-test/multi-platform/src/jvmTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
diff --git a/integration-tests/gradle/gradle6-test/multi-platform/src/nativeTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt b/integration-tests/gradle/gradle72-test/multi-platform/src/nativeTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
similarity index 100%
rename from integration-tests/gradle/gradle6-test/multi-platform/src/nativeTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
rename to integration-tests/gradle/gradle72-test/multi-platform/src/nativeTest/kotlin/io/realm/test/multiplatform/util/platform/PlatformUtils.kt
diff --git a/integration-tests/gradle/gradle71-test/settings.gradle.kts b/integration-tests/gradle/gradle72-test/settings.gradle.kts
similarity index 96%
rename from integration-tests/gradle/gradle71-test/settings.gradle.kts
rename to integration-tests/gradle/gradle72-test/settings.gradle.kts
index 27a751f0ea..d2180a1497 100644
--- a/integration-tests/gradle/gradle71-test/settings.gradle.kts
+++ b/integration-tests/gradle/gradle72-test/settings.gradle.kts
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-rootProject.name = "gradle71-plugin-test"
+rootProject.name = "gradle72-plugin-test"
pluginManagement {
repositories {
diff --git a/integration-tests/gradle/gradle6-test/single-platform/build.gradle.kts b/integration-tests/gradle/gradle72-test/single-platform/build.gradle.kts
similarity index 100%
rename from integration-tests/gradle/gradle6-test/single-platform/build.gradle.kts
rename to integration-tests/gradle/gradle72-test/single-platform/build.gradle.kts
diff --git a/integration-tests/gradle/gradle6-test/single-platform/consumer-rules.pro b/integration-tests/gradle/gradle72-test/single-platform/consumer-rules.pro
similarity index 100%
rename from integration-tests/gradle/gradle6-test/single-platform/consumer-rules.pro
rename to integration-tests/gradle/gradle72-test/single-platform/consumer-rules.pro
diff --git a/integration-tests/gradle/gradle6-test/single-platform/proguard-rules.pro b/integration-tests/gradle/gradle72-test/single-platform/proguard-rules.pro
similarity index 100%
rename from integration-tests/gradle/gradle6-test/single-platform/proguard-rules.pro
rename to integration-tests/gradle/gradle72-test/single-platform/proguard-rules.pro
diff --git a/integration-tests/gradle/gradle6-test/single-platform/src/androidTest/kotlin/io/realm/test/singleplatform/CrudTests.kt b/integration-tests/gradle/gradle72-test/single-platform/src/androidTest/kotlin/io/realm/test/singleplatform/CrudTests.kt
similarity index 100%
rename from integration-tests/gradle/gradle6-test/single-platform/src/androidTest/kotlin/io/realm/test/singleplatform/CrudTests.kt
rename to integration-tests/gradle/gradle72-test/single-platform/src/androidTest/kotlin/io/realm/test/singleplatform/CrudTests.kt
diff --git a/integration-tests/gradle/gradle6-test/single-platform/src/main/AndroidManifest.xml b/integration-tests/gradle/gradle72-test/single-platform/src/main/AndroidManifest.xml
similarity index 100%
rename from integration-tests/gradle/gradle6-test/single-platform/src/main/AndroidManifest.xml
rename to integration-tests/gradle/gradle72-test/single-platform/src/main/AndroidManifest.xml
diff --git a/integration-tests/gradle/gradle6-test/single-platform/src/main/java/io/realm/test/singleplatform/model/Pojo.java b/integration-tests/gradle/gradle72-test/single-platform/src/main/java/io/realm/test/singleplatform/model/Pojo.java
similarity index 100%
rename from integration-tests/gradle/gradle6-test/single-platform/src/main/java/io/realm/test/singleplatform/model/Pojo.java
rename to integration-tests/gradle/gradle72-test/single-platform/src/main/java/io/realm/test/singleplatform/model/Pojo.java
diff --git a/integration-tests/gradle/gradle6-test/single-platform/src/main/kotlin/io/realm/test/singleplatform/model/TestClass.kt b/integration-tests/gradle/gradle72-test/single-platform/src/main/kotlin/io/realm/test/singleplatform/model/TestClass.kt
similarity index 100%
rename from integration-tests/gradle/gradle6-test/single-platform/src/main/kotlin/io/realm/test/singleplatform/model/TestClass.kt
rename to integration-tests/gradle/gradle72-test/single-platform/src/main/kotlin/io/realm/test/singleplatform/model/TestClass.kt
diff --git a/integration-tests/gradle/gradle75-test/build.gradle.kts b/integration-tests/gradle/gradle75-test/build.gradle.kts
index 0baabc2b81..67f40a8d13 100644
--- a/integration-tests/gradle/gradle75-test/build.gradle.kts
+++ b/integration-tests/gradle/gradle75-test/build.gradle.kts
@@ -34,7 +34,7 @@ buildscript {
}
dependencies {
classpath("com.android.tools.build:gradle:7.4.0")
- classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0")
+ classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:2.0.0")
classpath("io.realm.kotlin:gradle-plugin:${rootProject.extra["realmVersion"]}")
}
}
diff --git a/integration-tests/gradle/gradle8-test/build.gradle.kts b/integration-tests/gradle/gradle8-test/build.gradle.kts
index 1a81127b6d..43dc5ee957 100644
--- a/integration-tests/gradle/gradle8-test/build.gradle.kts
+++ b/integration-tests/gradle/gradle8-test/build.gradle.kts
@@ -34,7 +34,7 @@ buildscript {
}
dependencies {
classpath("com.android.tools.build:gradle:8.1.0")
- classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.10")
+ classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:2.0.0")
classpath("io.realm.kotlin:gradle-plugin:${rootProject.extra["realmVersion"]}")
}
}
diff --git a/integration-tests/gradle/gradle85-test/build.gradle.kts b/integration-tests/gradle/gradle85-test/build.gradle.kts
index 1a81127b6d..43dc5ee957 100644
--- a/integration-tests/gradle/gradle85-test/build.gradle.kts
+++ b/integration-tests/gradle/gradle85-test/build.gradle.kts
@@ -34,7 +34,7 @@ buildscript {
}
dependencies {
classpath("com.android.tools.build:gradle:8.1.0")
- classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.10")
+ classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:2.0.0")
classpath("io.realm.kotlin:gradle-plugin:${rootProject.extra["realmVersion"]}")
}
}
diff --git a/integration-tests/gradle/gradle85-test/settings.gradle.kts b/integration-tests/gradle/gradle85-test/settings.gradle.kts
index 152903ee81..d689e49d1a 100644
--- a/integration-tests/gradle/gradle85-test/settings.gradle.kts
+++ b/integration-tests/gradle/gradle85-test/settings.gradle.kts
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-rootProject.name = "gradle8-plugin-test"
+rootProject.name = "gradle85-plugin-test"
pluginManagement {
repositories {
diff --git a/packages/plugin-compiler/build.gradle.kts b/packages/plugin-compiler/build.gradle.kts
index d68062946b..7ed67284cc 100644
--- a/packages/plugin-compiler/build.gradle.kts
+++ b/packages/plugin-compiler/build.gradle.kts
@@ -34,7 +34,7 @@ dependencies {
testImplementation("org.jetbrains.kotlin:kotlin-compiler-embeddable:${Versions.kotlin}")
testImplementation("org.jetbrains.kotlin:kotlin-test-junit:${Versions.kotlin}")
testImplementation("org.jetbrains.kotlin:kotlin-reflect:${Versions.kotlin}")
- testImplementation("com.github.tschuchortdev:kotlin-compile-testing:${Versions.kotlinCompileTesting}")
+ testImplementation("dev.zacsweers.kctfork:core:${Versions.kotlinCompileTesting}")
// Have to be mentioned explicitly as it is not an api dependency of library
implementation(project(":cinterop"))
testImplementation(project(":library-base"))
diff --git a/packages/plugin-compiler/src/main/kotlin/io/realm/kotlin/compiler/Registrar.kt b/packages/plugin-compiler/src/main/kotlin/io/realm/kotlin/compiler/Registrar.kt
index 388d647a8e..dd9f77fd65 100644
--- a/packages/plugin-compiler/src/main/kotlin/io/realm/kotlin/compiler/Registrar.kt
+++ b/packages/plugin-compiler/src/main/kotlin/io/realm/kotlin/compiler/Registrar.kt
@@ -98,4 +98,6 @@ class Registrar : ComponentRegistrar {
}
}
}
+
+ override val supportsK2: Boolean = true
}
diff --git a/packages/plugin-compiler/src/test/kotlin/io/realm/kotlin/compiler/GenerationExtensionTest.kt b/packages/plugin-compiler/src/test/kotlin/io/realm/kotlin/compiler/GenerationExtensionTest.kt
index b0816c2e9f..3280f61993 100644
--- a/packages/plugin-compiler/src/test/kotlin/io/realm/kotlin/compiler/GenerationExtensionTest.kt
+++ b/packages/plugin-compiler/src/test/kotlin/io/realm/kotlin/compiler/GenerationExtensionTest.kt
@@ -17,6 +17,7 @@
package io.realm.kotlin.compiler
+import com.tschuchort.compiletesting.JvmCompilationResult
import com.tschuchort.compiletesting.KotlinCompilation
import com.tschuchort.compiletesting.PluginOption
import com.tschuchort.compiletesting.SourceFile
@@ -92,9 +93,9 @@ class GenerationExtensionTest {
).joinToString(separator = File.separator)
fun assertGeneratedIR() {
- val outputFile = File("${outputDir()}/main/01_AFTER.ValidateIrBeforeLowering.ir")
+ val outputFile = File("${outputDir()}/main/02_AFTER.ValidateIrBeforeLowering.ir")
stripInputPath(outputFile, fileMap)
- val expected = File("${expectedDir()}/01_AFTER.ValidateIrBeforeLowering.ir").readText()
+ val expected = File("${expectedDir()}/02_AFTER.ValidateIrBeforeLowering.ir").readText()
val actual = outputFile.readText()
assertEquals(expected, actual)
}
@@ -387,7 +388,7 @@ class GenerationExtensionTest {
inputs: Files,
plugins: List = listOf(Registrar()),
options: List = emptyList(),
- ): KotlinCompilation.Result {
+ ): JvmCompilationResult {
return KotlinCompilation().apply {
sources = inputs.fileMap.values.map { SourceFile.fromPath(it) }
messageOutputStream = System.out
diff --git a/packages/plugin-compiler/src/test/resources/sample/expected/01_AFTER.ValidateIrBeforeLowering.ir b/packages/plugin-compiler/src/test/resources/sample/expected/02_AFTER.ValidateIrBeforeLowering.ir
similarity index 96%
rename from packages/plugin-compiler/src/test/resources/sample/expected/01_AFTER.ValidateIrBeforeLowering.ir
rename to packages/plugin-compiler/src/test/resources/sample/expected/02_AFTER.ValidateIrBeforeLowering.ir
index b271c40cba..2110ada2d6 100644
--- a/packages/plugin-compiler/src/test/resources/sample/expected/01_AFTER.ValidateIrBeforeLowering.ir
+++ b/packages/plugin-compiler/src/test/resources/sample/expected/02_AFTER.ValidateIrBeforeLowering.ir
@@ -578,37 +578,37 @@ MODULE_FRAGMENT name:
propertyName: CONST String type=kotlin.String value="doubleField"
value: GET_VAR ': kotlin.Double? declared in sample.input.Sample.' type=kotlin.Double? origin=null
PROPERTY name:decimal128Field visibility:public modality:FINAL [var]
- FIELD PROPERTY_BACKING_FIELD name:decimal128Field type:org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } visibility:private
+ FIELD PROPERTY_BACKING_FIELD name:decimal128Field type:org.mongodb.kbson.BsonDecimal128? visibility:private
EXPRESSION_BODY
- CALL 'public final fun invoke (value: kotlin.String): org.mongodb.kbson.BsonDecimal128 [operator] declared in org.mongodb.kbson.BsonDecimal128.Companion' type=org.mongodb.kbson.BsonDecimal128 origin=INVOKE
+ CALL 'public final fun invoke (value: kotlin.String): org.mongodb.kbson.BsonDecimal128 [operator] declared in org.mongodb.kbson.BsonDecimal128.Companion' type=org.mongodb.kbson.BsonDecimal128 origin=null
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Companion modality:FINAL visibility:public [companion] superTypes:[kotlin.Any]' type=org.mongodb.kbson.BsonDecimal128.Companion
value: CONST String type=kotlin.String value="1.8446744073709551618E-6157"
- FUN GENERATED[io.realm.kotlin.compiler.fir.RealmPluginGeneratorKey] name: visibility:public modality:FINAL <> ($this:sample.input.Sample) returnType:org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? }
+ FUN GENERATED[io.realm.kotlin.compiler.fir.RealmPluginGeneratorKey] name: visibility:public modality:FINAL <> ($this:sample.input.Sample) returnType:org.mongodb.kbson.BsonDecimal128?
correspondingProperty: PROPERTY name:decimal128Field visibility:public modality:FINAL [var]
$this: VALUE_PARAMETER name: type:sample.input.Sample
BLOCK_BODY
- RETURN type=kotlin.Nothing from='public final fun (): org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } declared in sample.input.Sample'
- BLOCK type=org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } origin=null
+ RETURN type=kotlin.Nothing from='public final fun (): org.mongodb.kbson.BsonDecimal128? declared in sample.input.Sample'
+ BLOCK type=org.mongodb.kbson.BsonDecimal128? origin=null
VAR IR_TEMPORARY_VARIABLE name:tmp0_objectReference type:io.realm.kotlin.internal.RealmObjectReference? [val]
CALL 'public open fun (): io.realm.kotlin.internal.RealmObjectReference? declared in sample.input.Sample' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
$this: GET_VAR ': sample.input.Sample declared in sample.input.Sample.' type=sample.input.Sample origin=null
- WHEN type=org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } origin=null
+ WHEN type=org.mongodb.kbson.BsonDecimal128? origin=null
BRANCH
if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
arg0: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
arg1: CONST Null type=kotlin.Nothing? value=null
- then: GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:decimal128Field type:org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } visibility:private' type=org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } origin=null
+ then: GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:decimal128Field type:org.mongodb.kbson.BsonDecimal128? visibility:private' type=org.mongodb.kbson.BsonDecimal128? origin=null
receiver: GET_VAR ': sample.input.Sample declared in sample.input.Sample.' type=sample.input.Sample origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun getDecimal128 (obj: io.realm.kotlin.internal.RealmObjectReference, propertyName: kotlin.String): org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } origin=null
+ then: CALL 'internal final fun getDecimal128 (obj: io.realm.kotlin.internal.RealmObjectReference, propertyName: kotlin.String): org.mongodb.kbson.BsonDecimal128? [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=org.mongodb.kbson.BsonDecimal128? origin=null
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
propertyName: CONST String type=kotlin.String value="decimal128Field"
- FUN GENERATED[io.realm.kotlin.compiler.fir.RealmPluginGeneratorKey] name: visibility:public modality:FINAL <> ($this:sample.input.Sample, :org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? }) returnType:kotlin.Unit
+ FUN GENERATED[io.realm.kotlin.compiler.fir.RealmPluginGeneratorKey] name: visibility:public modality:FINAL <> ($this:sample.input.Sample, :org.mongodb.kbson.BsonDecimal128?) returnType:kotlin.Unit
correspondingProperty: PROPERTY name:decimal128Field visibility:public modality:FINAL [var]
$this: VALUE_PARAMETER name: type:sample.input.Sample
- VALUE_PARAMETER name: index:0 type:org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? }
+ VALUE_PARAMETER name: index:0 type:org.mongodb.kbson.BsonDecimal128?
BLOCK_BODY
VAR IR_TEMPORARY_VARIABLE name:tmp0_objectReference type:io.realm.kotlin.internal.RealmObjectReference? [val]
CALL 'public open fun (): io.realm.kotlin.internal.RealmObjectReference? declared in sample.input.Sample' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
@@ -618,16 +618,16 @@ MODULE_FRAGMENT name:
if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
arg0: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
arg1: CONST Null type=kotlin.Nothing? value=null
- then: SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:decimal128Field type:org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } visibility:private' type=kotlin.Unit origin=null
+ then: SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:decimal128Field type:org.mongodb.kbson.BsonDecimal128? visibility:private' type=kotlin.Unit origin=null
receiver: GET_VAR ': sample.input.Sample declared in sample.input.Sample.' type=sample.input.Sample origin=null
- value: GET_VAR ': org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } declared in sample.input.Sample.' type=org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } origin=null
+ value: GET_VAR ': org.mongodb.kbson.BsonDecimal128? declared in sample.input.Sample.' type=org.mongodb.kbson.BsonDecimal128? origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
then: CALL 'internal final fun setValue (obj: io.realm.kotlin.internal.RealmObjectReference, propertyName: kotlin.String, value: kotlin.Any?): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
propertyName: CONST String type=kotlin.String value="decimal128Field"
- value: GET_VAR ': org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } declared in sample.input.Sample.' type=org.mongodb.kbson.BsonDecimal128?{ org.mongodb.kbson.Decimal128Kt.Decimal128? } origin=null
+ value: GET_VAR ': org.mongodb.kbson.BsonDecimal128? declared in sample.input.Sample.' type=org.mongodb.kbson.BsonDecimal128? origin=null
PROPERTY name:timestampField visibility:public modality:FINAL [var]
FIELD PROPERTY_BACKING_FIELD name:timestampField type:io.realm.kotlin.types.RealmInstant? visibility:private
EXPRESSION_BODY
@@ -683,7 +683,7 @@ MODULE_FRAGMENT name:
PROPERTY name:bsonObjectIdField visibility:public modality:FINAL [var]
FIELD PROPERTY_BACKING_FIELD name:bsonObjectIdField type:org.mongodb.kbson.BsonObjectId? visibility:private
EXPRESSION_BODY
- CALL 'public final fun invoke (): org.mongodb.kbson.BsonObjectId [operator] declared in org.mongodb.kbson.BsonObjectId.Companion' type=org.mongodb.kbson.BsonObjectId origin=INVOKE
+ CALL 'public final fun invoke (): org.mongodb.kbson.BsonObjectId [operator] declared in org.mongodb.kbson.BsonObjectId.Companion' type=org.mongodb.kbson.BsonObjectId origin=null
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Companion modality:FINAL visibility:public [companion] superTypes:[kotlin.Any]' type=org.mongodb.kbson.BsonObjectId.Companion
FUN GENERATED[io.realm.kotlin.compiler.fir.RealmPluginGeneratorKey] name: visibility:public modality:FINAL <> ($this:sample.input.Sample) returnType:org.mongodb.kbson.BsonObjectId?
correspondingProperty: PROPERTY name:bsonObjectIdField visibility:public modality:FINAL [var]
@@ -926,7 +926,7 @@ MODULE_FRAGMENT name:
value: GET_VAR ': sample.input.Child? declared in sample.input.Sample.' type=sample.input.Child? origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun setObject (obj: io.realm.kotlin.internal.RealmObjectReference, propertyName: kotlin.String, value: io.realm.kotlin.types.BaseRealmObject?, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap{ io.realm.kotlin.internal.RealmUtilsKt.UnmanagedToManagedObjectCache }): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
+ then: CALL 'internal final fun setObject (obj: io.realm.kotlin.internal.RealmObjectReference, propertyName: kotlin.String, value: io.realm.kotlin.types.BaseRealmObject?, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
propertyName: CONST String type=kotlin.String value="child"
@@ -1028,7 +1028,7 @@ MODULE_FRAGMENT name:
value: GET_VAR ': io.realm.kotlin.types.RealmList declared in sample.input.Sample.' type=io.realm.kotlin.types.RealmList origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap{ io.realm.kotlin.internal.RealmUtilsKt.UnmanagedToManagedObjectCache }): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
+ then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
: kotlin.String
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
@@ -1080,7 +1080,7 @@ MODULE_FRAGMENT name:
value: GET_VAR ': io.realm.kotlin.types.RealmList declared in sample.input.Sample.' type=io.realm.kotlin.types.RealmList origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap{ io.realm.kotlin.internal.RealmUtilsKt.UnmanagedToManagedObjectCache }): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
+ then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
: kotlin.Byte
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
@@ -1132,7 +1132,7 @@ MODULE_FRAGMENT name:
value: GET_VAR ': io.realm.kotlin.types.RealmList declared in sample.input.Sample.' type=io.realm.kotlin.types.RealmList origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap{ io.realm.kotlin.internal.RealmUtilsKt.UnmanagedToManagedObjectCache }): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
+ then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
: kotlin.Char
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
@@ -1184,7 +1184,7 @@ MODULE_FRAGMENT name:
value: GET_VAR ': io.realm.kotlin.types.RealmList declared in sample.input.Sample.' type=io.realm.kotlin.types.RealmList origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap{ io.realm.kotlin.internal.RealmUtilsKt.UnmanagedToManagedObjectCache }): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
+ then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
: kotlin.Short
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
@@ -1236,7 +1236,7 @@ MODULE_FRAGMENT name:
value: GET_VAR ': io.realm.kotlin.types.RealmList declared in sample.input.Sample.' type=io.realm.kotlin.types.RealmList origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap{ io.realm.kotlin.internal.RealmUtilsKt.UnmanagedToManagedObjectCache }): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
+ then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
: kotlin.Int
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
@@ -1288,7 +1288,7 @@ MODULE_FRAGMENT name:
value: GET_VAR ': io.realm.kotlin.types.RealmList declared in sample.input.Sample.' type=io.realm.kotlin.types.RealmList origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap{ io.realm.kotlin.internal.RealmUtilsKt.UnmanagedToManagedObjectCache }): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
+ then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
: kotlin.Long
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
@@ -1340,7 +1340,7 @@ MODULE_FRAGMENT name:
value: GET_VAR ': io.realm.kotlin.types.RealmList declared in sample.input.Sample.' type=io.realm.kotlin.types.RealmList origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap{ io.realm.kotlin.internal.RealmUtilsKt.UnmanagedToManagedObjectCache }): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
+ then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
: kotlin.Boolean
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
@@ -1392,7 +1392,7 @@ MODULE_FRAGMENT name:
value: GET_VAR ': io.realm.kotlin.types.RealmList declared in sample.input.Sample.' type=io.realm.kotlin.types.RealmList origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap{ io.realm.kotlin.internal.RealmUtilsKt.UnmanagedToManagedObjectCache }): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
+ then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
: kotlin.Float
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
@@ -1444,7 +1444,7 @@ MODULE_FRAGMENT name:
value: GET_VAR ': io.realm.kotlin.types.RealmList declared in sample.input.Sample.' type=io.realm.kotlin.types.RealmList origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap{ io.realm.kotlin.internal.RealmUtilsKt.UnmanagedToManagedObjectCache }): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
+ then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
: kotlin.Double
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
@@ -1496,7 +1496,7 @@ MODULE_FRAGMENT name:
value: GET_VAR ': io.realm.kotlin.types.RealmList declared in sample.input.Sample.' type=io.realm.kotlin.types.RealmList origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap{ io.realm.kotlin.internal.RealmUtilsKt.UnmanagedToManagedObjectCache }): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
+ then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
: io.realm.kotlin.types.RealmInstant
$this: GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:RealmObjectHelper modality:FINAL visibility:internal superTypes:[kotlin.Any]' type=io.realm.kotlin.internal.RealmObjectHelper
obj: GET_VAR 'val tmp0_objectReference: io.realm.kotlin.internal.RealmObjectReference? [val] declared in sample.input.Sample.' type=io.realm.kotlin.internal.RealmObjectReference? origin=null
@@ -1548,7 +1548,7 @@ MODULE_FRAGMENT name:
value: GET_VAR ': io.realm.kotlin.types.RealmList declared in sample.input.Sample.' type=io.realm.kotlin.types.RealmList origin=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
- then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference, col: kotlin.String, list: io.realm.kotlin.types.RealmList, updatePolicy: io.realm.kotlin.UpdatePolicy, cache: kotlin.collections.MutableMap{ io.realm.kotlin.internal.RealmUtilsKt.UnmanagedToManagedObjectCache }): kotlin.Unit [inline] declared in io.realm.kotlin.internal.RealmObjectHelper' type=kotlin.Unit origin=null
+ then: CALL 'internal final fun setList (obj: io.realm.kotlin.internal.RealmObjectReference