Common MMIO API for Kotlin Multiplatform based on kotlinx.io.
This library was developed as part of the Kleaver project.
- Windows x64
- Linux x64
- Linux arm64
- macOS x64
- macOS arm64
- iOS x64
- iOS arm64
- Android Native x64
- Android Native arm64
- Android Native arm32
Support for the JVM is planned.
First, add a dependency on the library:
repositories {
maven("https://files.karmakrafts.dev/maven")
}
kotlin {
sourceSets {
commonMain {
dependencies {
implementation("io.karma.kmmio:kmmio:<version>")
}
}
}
}
Afterwards, you can access all APIs from any native source set:
import io.karma.kmmio.AccessFlags
import io.karma.kmmio.AccessFlags.Companion
import io.karma.kmmio.MemoryRegion
fun main() {
MemoryRegion.map(path, AccessFlags.READ + AccessFlags.WRITE).use {
it.asSource() // Consume data through a kotlinx.io.Source
it.asSink() // Produce data through a kotlinx.io.Sink
}
}