small improvements
This commit is contained in:
parent
38751b5df6
commit
6ea003700f
@ -1,3 +1,5 @@
|
||||
import org.jetbrains.kotlin.gradle.ExperimentalWasmDsl
|
||||
|
||||
plugins {
|
||||
kotlin("multiplatform") version "2.0.21"
|
||||
kotlin("plugin.serialization") version "2.0.21"
|
||||
@ -6,7 +8,7 @@ plugins {
|
||||
}
|
||||
|
||||
group = "net.sergeych"
|
||||
version = "0.1.11"
|
||||
version = "0.1.12-SNAPSHOT"
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
@ -31,6 +33,7 @@ kotlin {
|
||||
linuxArm64()
|
||||
mingwX64()
|
||||
|
||||
@OptIn(ExperimentalWasmDsl::class)
|
||||
wasmJs {
|
||||
browser()
|
||||
binaries.executable()
|
||||
|
@ -1,6 +1,7 @@
|
||||
package net.sergeych.bintools
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
import net.sergeych.mp_tools.encodeToBase64Compact
|
||||
import kotlin.math.min
|
||||
import kotlin.random.Random
|
||||
|
||||
@ -64,6 +65,11 @@ class ByteChunk(val data: UByteArray): Comparable<ByteChunk> {
|
||||
*/
|
||||
val dump by lazy { data.toDump() }
|
||||
|
||||
/**
|
||||
* Lazy encode to base64 with url alphabet, without trailing fill '=' characters.
|
||||
*/
|
||||
val base64 by lazy { data.asByteArray().encodeToBase64Compact() }
|
||||
|
||||
/**
|
||||
* Concatenate two chunks and return new one
|
||||
*/
|
||||
@ -75,6 +81,13 @@ class ByteChunk(val data: UByteArray): Comparable<ByteChunk> {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Create the representation of this array as ByteChunk; it does not copy the data.
|
||||
*/
|
||||
fun ByteArray.asChunk() = ByteChunk(this.asUByteArray())
|
||||
|
||||
/**
|
||||
* Create the representation of this array as ByteChunk; it does not copy the data.
|
||||
*/
|
||||
@Suppress("unused")
|
||||
fun UByteArray.asChunk() = ByteChunk(this)
|
Loading…
x
Reference in New Issue
Block a user