Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ plugins {
alias(libs.plugins.dokka)
alias(libs.plugins.mavenPublish) apply false

alias(libs.plugins.kotlinx.atomicfu)
alias(libs.plugins.kotlinx.binaryCompatibilityValidator)
}

Expand Down
8 changes: 6 additions & 2 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,22 @@ kotlin = "2.1.0"
dokka = "1.9.20"
mavenPublish = "0.30.0"

kotlinx-binaryCompatibilityValidator = "0.16.3"

kotlinx-atomicfu = "0.26.1"
kotlinx-coroutines = "1.9.0"

kotlinx-binaryCompatibilityValidator = "0.16.3"

[plugins]
kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }

dokka = { id = "org.jetbrains.dokka", version.ref = "dokka" }
mavenPublish = { id = "com.vanniktech.maven.publish", version.ref = "mavenPublish" }

kotlinx-atomicfu = { id = "org.jetbrains.kotlinx.atomicfu", version.ref = "kotlinx-atomicfu" }

kotlinx-binaryCompatibilityValidator = { id = "org.jetbrains.kotlinx.binary-compatibility-validator", version.ref = "kotlinx-binaryCompatibilityValidator" }

[libraries]
kotlinx-atomicfu = { module = "org.jetbrains.kotlinx:atomicfu", version.ref = "kotlinx-atomicfu" }
kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinx-coroutines" }
kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "kotlinx-coroutines" }
1,983 changes: 1,983 additions & 0 deletions kotlin-js-store/yarn.lock

Large diffs are not rendered by default.

43 changes: 43 additions & 0 deletions rwmutex/api/rwmutex.api
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
public abstract interface class com/mayakapps/rwmutex/ReadWriteMutex {
public abstract fun getReadMutex ()Lkotlinx/coroutines/sync/Mutex;
public abstract fun getState-4GAVRlY ()I
public abstract fun getWriteMutex ()Lkotlinx/coroutines/sync/Mutex;
}

public final class com/mayakapps/rwmutex/ReadWriteMutex$State {
public static final synthetic fun box-impl (I)Lcom/mayakapps/rwmutex/ReadWriteMutex$State;
public fun equals (Ljava/lang/Object;)Z
public static fun equals-impl (ILjava/lang/Object;)Z
public static final fun equals-impl0 (II)Z
public static final fun getActiveReaderCount-impl (I)Ljava/lang/Integer;
public static final fun getHasPendingReadersOrWriters-impl (I)Z
public static final fun getPendingOrDepartingReaderCount-impl (I)I
public fun hashCode ()I
public static fun hashCode-impl (I)I
public static final fun isReadLockAvailable-impl (I)Z
public static final fun isReadLocked-impl (I)Z
public static final fun isUnlocked-impl (I)Z
public static final fun isWriteLocked-impl (I)Z
public static final fun isWriteLockedOrPending-impl (I)Z
public fun toString ()Ljava/lang/String;
public static fun toString-impl (I)Ljava/lang/String;
public final synthetic fun unbox-impl ()I
}

public final class com/mayakapps/rwmutex/ReadWriteMutexKt {
public static final fun ReadWriteMutex ()Lcom/mayakapps/rwmutex/ReadWriteMutex;
public static final fun holdsWriteLock (Lcom/mayakapps/rwmutex/ReadWriteMutex;Ljava/lang/Object;)Z
public static final fun readLock (Lcom/mayakapps/rwmutex/ReadWriteMutex;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
public static final fun readUnlock (Lcom/mayakapps/rwmutex/ReadWriteMutex;)V
public static final fun tryReadLock (Lcom/mayakapps/rwmutex/ReadWriteMutex;)Z
public static final fun tryWriteLock (Lcom/mayakapps/rwmutex/ReadWriteMutex;Ljava/lang/Object;)Z
public static synthetic fun tryWriteLock$default (Lcom/mayakapps/rwmutex/ReadWriteMutex;Ljava/lang/Object;ILjava/lang/Object;)Z
public static final fun withReadLock (Lcom/mayakapps/rwmutex/ReadWriteMutex;Lkotlin/jvm/functions/Function0;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
public static final fun withWriteLock (Lcom/mayakapps/rwmutex/ReadWriteMutex;Ljava/lang/Object;Lkotlin/jvm/functions/Function0;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
public static synthetic fun withWriteLock$default (Lcom/mayakapps/rwmutex/ReadWriteMutex;Ljava/lang/Object;Lkotlin/jvm/functions/Function0;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
public static final fun writeLock (Lcom/mayakapps/rwmutex/ReadWriteMutex;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
public static synthetic fun writeLock$default (Lcom/mayakapps/rwmutex/ReadWriteMutex;Ljava/lang/Object;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
public static final fun writeUnlock (Lcom/mayakapps/rwmutex/ReadWriteMutex;Ljava/lang/Object;)V
public static synthetic fun writeUnlock$default (Lcom/mayakapps/rwmutex/ReadWriteMutex;Ljava/lang/Object;ILjava/lang/Object;)V
}

9 changes: 7 additions & 2 deletions rwmutex/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ kotlin {
@Suppress("OPT_IN_USAGE") wasmJs {
browser()
nodejs()
d8()
}

@Suppress("OPT_IN_USAGE") wasmWasi {
Expand Down Expand Up @@ -65,17 +64,23 @@ kotlin {
sourceSets {
commonMain {
dependencies {
implementation(libs.kotlinx.atomicfu)
implementation(libs.kotlinx.coroutines.core)
}
}

commonTest {
val commonTest by getting {
dependencies {
implementation(kotlin("test"))

implementation(libs.kotlinx.coroutines.test)
}
}

val jsAndWasmTest by creating { dependsOn(commonTest) }
jsTest { dependsOn(jsAndWasmTest) }
wasmJsTest { dependsOn(jsAndWasmTest) }
wasmWasiTest { dependsOn(jsAndWasmTest) }
}
}

Expand Down
Loading