From c1b8800e82ee2572efdd2e8bf1659bb3a6b5408d Mon Sep 17 00:00:00 2001 From: Infendro Date: Mon, 19 Jan 2026 19:55:39 +0100 Subject: [PATCH] implement composition --- .../kotlin/com/infendro/encoding/Base10.kt | 5 +++ .../kotlin/com/infendro/encoding/Base16.kt | 5 +++ .../kotlin/com/infendro/encoding/Base2.kt | 5 +++ .../infendro/encoding/{stream => }/Base32.kt | 4 +-- .../infendro/encoding/{numeric => }/Base36.kt | 4 +-- .../infendro/encoding/{numeric => }/Base56.kt | 4 +-- .../infendro/encoding/{numeric => }/Base58.kt | 4 +-- .../infendro/encoding/{numeric => }/Base62.kt | 4 +-- .../infendro/encoding/{stream => }/Base64.kt | 4 +-- .../kotlin/com/infendro/encoding/Base8.kt | 5 +++ .../kotlin/com/infendro/encoding/Encoding.kt | 13 +++---- .../encoding/{numeric => }/NumericEncoding.kt | 11 +++--- .../encoding/{stream => }/StreamEncoding.kt | 11 +++--- .../com/infendro/encoding/stream/Base16.kt | 5 --- .../com/infendro/encoding/stream/Base2.kt | 5 --- .../com/infendro/encoding/stream/Base8.kt | 5 --- .../kotlin/com/infendro/encoding/Base10.kt | 36 +++++++++++++++++++ .../infendro/encoding/{stream => }/Base16.kt | 3 +- .../infendro/encoding/{stream => }/Base2.kt | 3 +- .../infendro/encoding/{stream => }/Base32.kt | 3 +- .../infendro/encoding/{numeric => }/Base36.kt | 3 +- .../infendro/encoding/{numeric => }/Base56.kt | 5 ++- .../infendro/encoding/{numeric => }/Base58.kt | 3 +- .../infendro/encoding/{numeric => }/Base62.kt | 3 +- .../infendro/encoding/{stream => }/Base64.kt | 3 +- .../infendro/encoding/{stream => }/Base8.kt | 3 +- 26 files changed, 91 insertions(+), 68 deletions(-) create mode 100644 src/commonMain/kotlin/com/infendro/encoding/Base10.kt create mode 100644 src/commonMain/kotlin/com/infendro/encoding/Base16.kt create mode 100644 src/commonMain/kotlin/com/infendro/encoding/Base2.kt rename src/commonMain/kotlin/com/infendro/encoding/{stream => }/Base32.kt (57%) rename src/commonMain/kotlin/com/infendro/encoding/{numeric => }/Base36.kt (50%) rename src/commonMain/kotlin/com/infendro/encoding/{numeric => }/Base56.kt (55%) rename src/commonMain/kotlin/com/infendro/encoding/{numeric => }/Base58.kt (55%) rename src/commonMain/kotlin/com/infendro/encoding/{numeric => }/Base62.kt (56%) rename src/commonMain/kotlin/com/infendro/encoding/{stream => }/Base64.kt (63%) create mode 100644 src/commonMain/kotlin/com/infendro/encoding/Base8.kt rename src/commonMain/kotlin/com/infendro/encoding/{numeric => }/NumericEncoding.kt (87%) rename src/commonMain/kotlin/com/infendro/encoding/{stream => }/StreamEncoding.kt (94%) delete mode 100644 src/commonMain/kotlin/com/infendro/encoding/stream/Base16.kt delete mode 100644 src/commonMain/kotlin/com/infendro/encoding/stream/Base2.kt delete mode 100644 src/commonMain/kotlin/com/infendro/encoding/stream/Base8.kt create mode 100644 src/commonTest/kotlin/com/infendro/encoding/Base10.kt rename src/commonTest/kotlin/com/infendro/encoding/{stream => }/Base16.kt (91%) rename src/commonTest/kotlin/com/infendro/encoding/{stream => }/Base2.kt (92%) rename src/commonTest/kotlin/com/infendro/encoding/{stream => }/Base32.kt (91%) rename src/commonTest/kotlin/com/infendro/encoding/{numeric => }/Base36.kt (91%) rename src/commonTest/kotlin/com/infendro/encoding/{numeric => }/Base56.kt (85%) rename src/commonTest/kotlin/com/infendro/encoding/{numeric => }/Base58.kt (91%) rename src/commonTest/kotlin/com/infendro/encoding/{numeric => }/Base62.kt (91%) rename src/commonTest/kotlin/com/infendro/encoding/{stream => }/Base64.kt (91%) rename src/commonTest/kotlin/com/infendro/encoding/{stream => }/Base8.kt (91%) diff --git a/src/commonMain/kotlin/com/infendro/encoding/Base10.kt b/src/commonMain/kotlin/com/infendro/encoding/Base10.kt new file mode 100644 index 0000000..eab2713 --- /dev/null +++ b/src/commonMain/kotlin/com/infendro/encoding/Base10.kt @@ -0,0 +1,5 @@ +package com.infendro.encoding + +private val alphabet = "0123456789".encodeToByteArray() + +object Base10 : Encoding by NumericEncoding(alphabet) diff --git a/src/commonMain/kotlin/com/infendro/encoding/Base16.kt b/src/commonMain/kotlin/com/infendro/encoding/Base16.kt new file mode 100644 index 0000000..eff1268 --- /dev/null +++ b/src/commonMain/kotlin/com/infendro/encoding/Base16.kt @@ -0,0 +1,5 @@ +package com.infendro.encoding + +private val alphabet = "0123456789ABCDEF".encodeToByteArray() + +object Base16 : Encoding by StreamEncoding(alphabet) diff --git a/src/commonMain/kotlin/com/infendro/encoding/Base2.kt b/src/commonMain/kotlin/com/infendro/encoding/Base2.kt new file mode 100644 index 0000000..ec8db94 --- /dev/null +++ b/src/commonMain/kotlin/com/infendro/encoding/Base2.kt @@ -0,0 +1,5 @@ +package com.infendro.encoding + +private val alphabet = "01".encodeToByteArray() + +object Base2 : Encoding by StreamEncoding(alphabet) diff --git a/src/commonMain/kotlin/com/infendro/encoding/stream/Base32.kt b/src/commonMain/kotlin/com/infendro/encoding/Base32.kt similarity index 57% rename from src/commonMain/kotlin/com/infendro/encoding/stream/Base32.kt rename to src/commonMain/kotlin/com/infendro/encoding/Base32.kt index 61f6893..b89a8cb 100644 --- a/src/commonMain/kotlin/com/infendro/encoding/stream/Base32.kt +++ b/src/commonMain/kotlin/com/infendro/encoding/Base32.kt @@ -1,6 +1,6 @@ -package com.infendro.encoding.stream +package com.infendro.encoding private val alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567".encodeToByteArray() private const val padding = '='.code.toByte() -object Base32 : StreamEncoding(alphabet, padding) +object Base32 : Encoding by StreamEncoding(alphabet, padding) diff --git a/src/commonMain/kotlin/com/infendro/encoding/numeric/Base36.kt b/src/commonMain/kotlin/com/infendro/encoding/Base36.kt similarity index 50% rename from src/commonMain/kotlin/com/infendro/encoding/numeric/Base36.kt rename to src/commonMain/kotlin/com/infendro/encoding/Base36.kt index dd1a268..421b3cc 100644 --- a/src/commonMain/kotlin/com/infendro/encoding/numeric/Base36.kt +++ b/src/commonMain/kotlin/com/infendro/encoding/Base36.kt @@ -1,5 +1,5 @@ -package com.infendro.encoding.numeric +package com.infendro.encoding private val alphabet = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".encodeToByteArray() -object Base36 : NumericEncoding(alphabet) +object Base36 : Encoding by NumericEncoding(alphabet) diff --git a/src/commonMain/kotlin/com/infendro/encoding/numeric/Base56.kt b/src/commonMain/kotlin/com/infendro/encoding/Base56.kt similarity index 55% rename from src/commonMain/kotlin/com/infendro/encoding/numeric/Base56.kt rename to src/commonMain/kotlin/com/infendro/encoding/Base56.kt index 141d002..206a0d6 100644 --- a/src/commonMain/kotlin/com/infendro/encoding/numeric/Base56.kt +++ b/src/commonMain/kotlin/com/infendro/encoding/Base56.kt @@ -1,5 +1,5 @@ -package com.infendro.encoding.numeric +package com.infendro.encoding private val alphabet = "23456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz".encodeToByteArray() -object Base56 : NumericEncoding(alphabet) +object Base56 : Encoding by NumericEncoding(alphabet) diff --git a/src/commonMain/kotlin/com/infendro/encoding/numeric/Base58.kt b/src/commonMain/kotlin/com/infendro/encoding/Base58.kt similarity index 55% rename from src/commonMain/kotlin/com/infendro/encoding/numeric/Base58.kt rename to src/commonMain/kotlin/com/infendro/encoding/Base58.kt index 471a293..3b12ab9 100644 --- a/src/commonMain/kotlin/com/infendro/encoding/numeric/Base58.kt +++ b/src/commonMain/kotlin/com/infendro/encoding/Base58.kt @@ -1,5 +1,5 @@ -package com.infendro.encoding.numeric +package com.infendro.encoding private val alphabet = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz".encodeToByteArray() -object Base58 : NumericEncoding(alphabet) +object Base58 : Encoding by NumericEncoding(alphabet) diff --git a/src/commonMain/kotlin/com/infendro/encoding/numeric/Base62.kt b/src/commonMain/kotlin/com/infendro/encoding/Base62.kt similarity index 56% rename from src/commonMain/kotlin/com/infendro/encoding/numeric/Base62.kt rename to src/commonMain/kotlin/com/infendro/encoding/Base62.kt index d8e0dac..a56ab12 100644 --- a/src/commonMain/kotlin/com/infendro/encoding/numeric/Base62.kt +++ b/src/commonMain/kotlin/com/infendro/encoding/Base62.kt @@ -1,5 +1,5 @@ -package com.infendro.encoding.numeric +package com.infendro.encoding private val alphabet = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".encodeToByteArray() -object Base62 : NumericEncoding(alphabet) +object Base62 : Encoding by NumericEncoding(alphabet) diff --git a/src/commonMain/kotlin/com/infendro/encoding/stream/Base64.kt b/src/commonMain/kotlin/com/infendro/encoding/Base64.kt similarity index 63% rename from src/commonMain/kotlin/com/infendro/encoding/stream/Base64.kt rename to src/commonMain/kotlin/com/infendro/encoding/Base64.kt index 48a76b3..fdf8214 100644 --- a/src/commonMain/kotlin/com/infendro/encoding/stream/Base64.kt +++ b/src/commonMain/kotlin/com/infendro/encoding/Base64.kt @@ -1,6 +1,6 @@ -package com.infendro.encoding.stream +package com.infendro.encoding private val alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".encodeToByteArray() private const val padding = '='.code.toByte() -object Base64 : StreamEncoding(alphabet, padding) +object Base64 : Encoding by StreamEncoding(alphabet, padding) diff --git a/src/commonMain/kotlin/com/infendro/encoding/Base8.kt b/src/commonMain/kotlin/com/infendro/encoding/Base8.kt new file mode 100644 index 0000000..2f337d9 --- /dev/null +++ b/src/commonMain/kotlin/com/infendro/encoding/Base8.kt @@ -0,0 +1,5 @@ +package com.infendro.encoding + +private val alphabet = "01234567".encodeToByteArray() + +object Base8 : Encoding by StreamEncoding(alphabet) diff --git a/src/commonMain/kotlin/com/infendro/encoding/Encoding.kt b/src/commonMain/kotlin/com/infendro/encoding/Encoding.kt index 3d1b456..6949e9b 100644 --- a/src/commonMain/kotlin/com/infendro/encoding/Encoding.kt +++ b/src/commonMain/kotlin/com/infendro/encoding/Encoding.kt @@ -1,15 +1,10 @@ package com.infendro.encoding -abstract class Encoding( - val alphabet: ByteArray, -) { - init { - require(alphabet.isNotEmpty()) - } - +interface Encoding { + val alphabet: ByteArray val base: Int get() = alphabet.size - abstract fun encode(bytes: ByteArray): ByteArray - abstract fun decode(bytes: ByteArray): ByteArray + fun encode(bytes: ByteArray): ByteArray + fun decode(bytes: ByteArray): ByteArray } diff --git a/src/commonMain/kotlin/com/infendro/encoding/numeric/NumericEncoding.kt b/src/commonMain/kotlin/com/infendro/encoding/NumericEncoding.kt similarity index 87% rename from src/commonMain/kotlin/com/infendro/encoding/numeric/NumericEncoding.kt rename to src/commonMain/kotlin/com/infendro/encoding/NumericEncoding.kt index 671a552..d0ab549 100644 --- a/src/commonMain/kotlin/com/infendro/encoding/numeric/NumericEncoding.kt +++ b/src/commonMain/kotlin/com/infendro/encoding/NumericEncoding.kt @@ -1,22 +1,21 @@ -package com.infendro.encoding.numeric +package com.infendro.encoding -import com.infendro.encoding.Encoding import com.infendro.encoding.exception.IllegalByteException import com.infendro.encoding.util.BigInt import com.infendro.encoding.util.log2 import kotlin.math.ceil -open class NumericEncoding( - alphabet: ByteArray, -) : Encoding(alphabet) { +class NumericEncoding internal constructor( + override val alphabet: ByteArray, +) : Encoding { override fun encode(bytes: ByteArray): ByteArray { if (bytes.isEmpty()) return byteArrayOf() val size = ceil(bytes.size * 8 / log2(base)).toInt() val result = ByteArray(size) - var x = BigInt.from(bytes) var i = result.size + var x = BigInt.from(bytes) while (!x.isZero()) { val (quotient, remainder) = x.divRem(base) x = quotient diff --git a/src/commonMain/kotlin/com/infendro/encoding/stream/StreamEncoding.kt b/src/commonMain/kotlin/com/infendro/encoding/StreamEncoding.kt similarity index 94% rename from src/commonMain/kotlin/com/infendro/encoding/stream/StreamEncoding.kt rename to src/commonMain/kotlin/com/infendro/encoding/StreamEncoding.kt index 6bce001..8f8a056 100644 --- a/src/commonMain/kotlin/com/infendro/encoding/stream/StreamEncoding.kt +++ b/src/commonMain/kotlin/com/infendro/encoding/StreamEncoding.kt @@ -1,16 +1,15 @@ -package com.infendro.encoding.stream +package com.infendro.encoding -import com.infendro.encoding.Encoding import com.infendro.encoding.exception.IllegalByteException import com.infendro.encoding.util.align import com.infendro.encoding.util.divCeil import com.infendro.encoding.util.lcm import com.infendro.encoding.util.log2 -open class StreamEncoding( - alphabet: ByteArray, +class StreamEncoding internal constructor( + override val alphabet: ByteArray, private val padding: Byte? = null, -) : Encoding(alphabet) { +) : Encoding { init { require(base and (base - 1) == 0) } @@ -30,7 +29,6 @@ open class StreamEncoding( var r = 0 var buffer = 0 var bufferBits = 0 - for (i in bytes.indices) { buffer = (buffer shl 8) + bytes[i] bufferBits += 8 @@ -71,7 +69,6 @@ open class StreamEncoding( var r = 0 var buffer = 0 var bufferBits = 0 - for (i in bytes.indices) { val byte = bytes[i] if (byte == padding) break diff --git a/src/commonMain/kotlin/com/infendro/encoding/stream/Base16.kt b/src/commonMain/kotlin/com/infendro/encoding/stream/Base16.kt deleted file mode 100644 index 0fc0b08..0000000 --- a/src/commonMain/kotlin/com/infendro/encoding/stream/Base16.kt +++ /dev/null @@ -1,5 +0,0 @@ -package com.infendro.encoding.stream - -private val alphabet = "0123456789ABCDEF".encodeToByteArray() - -object Base16 : StreamEncoding(alphabet) diff --git a/src/commonMain/kotlin/com/infendro/encoding/stream/Base2.kt b/src/commonMain/kotlin/com/infendro/encoding/stream/Base2.kt deleted file mode 100644 index d61a0e3..0000000 --- a/src/commonMain/kotlin/com/infendro/encoding/stream/Base2.kt +++ /dev/null @@ -1,5 +0,0 @@ -package com.infendro.encoding.stream - -private val alphabet = "01".encodeToByteArray() - -object Base2 : StreamEncoding(alphabet) diff --git a/src/commonMain/kotlin/com/infendro/encoding/stream/Base8.kt b/src/commonMain/kotlin/com/infendro/encoding/stream/Base8.kt deleted file mode 100644 index ae87faa..0000000 --- a/src/commonMain/kotlin/com/infendro/encoding/stream/Base8.kt +++ /dev/null @@ -1,5 +0,0 @@ -package com.infendro.encoding.stream - -private val alphabet = "01234567".encodeToByteArray() - -object Base8 : StreamEncoding(alphabet) diff --git a/src/commonTest/kotlin/com/infendro/encoding/Base10.kt b/src/commonTest/kotlin/com/infendro/encoding/Base10.kt new file mode 100644 index 0000000..017b8f7 --- /dev/null +++ b/src/commonTest/kotlin/com/infendro/encoding/Base10.kt @@ -0,0 +1,36 @@ +package com.infendro.encoding + +import kotlin.test.Test +import kotlin.test.assertContentEquals + +class `Base10 Test` { + val encoding: Encoding + get() = Base10 + + val original = "Hello World!".encodeToByteArray() + val encoded = "22405534230753928650781647905".encodeToByteArray() + + @Test + fun `encode empty`() { + val actual = encoding.encode(byteArrayOf()) + assertContentEquals(byteArrayOf(), actual) + } + + @Test + fun `decode empty`() { + val actual = encoding.decode(byteArrayOf()) + assertContentEquals(byteArrayOf(), actual) + } + + @Test + fun encode() { + val actual = encoding.encode(original) + assertContentEquals(encoded, actual) + } + + @Test + fun decode() { + val actual = encoding.decode(encoded) + assertContentEquals(original, actual) + } +} diff --git a/src/commonTest/kotlin/com/infendro/encoding/stream/Base16.kt b/src/commonTest/kotlin/com/infendro/encoding/Base16.kt similarity index 91% rename from src/commonTest/kotlin/com/infendro/encoding/stream/Base16.kt rename to src/commonTest/kotlin/com/infendro/encoding/Base16.kt index 1803488..380e5c9 100644 --- a/src/commonTest/kotlin/com/infendro/encoding/stream/Base16.kt +++ b/src/commonTest/kotlin/com/infendro/encoding/Base16.kt @@ -1,6 +1,5 @@ -package com.infendro.encoding.stream +package com.infendro.encoding -import com.infendro.encoding.Encoding import kotlin.test.Test import kotlin.test.assertContentEquals diff --git a/src/commonTest/kotlin/com/infendro/encoding/stream/Base2.kt b/src/commonTest/kotlin/com/infendro/encoding/Base2.kt similarity index 92% rename from src/commonTest/kotlin/com/infendro/encoding/stream/Base2.kt rename to src/commonTest/kotlin/com/infendro/encoding/Base2.kt index e91105a..f4235a6 100644 --- a/src/commonTest/kotlin/com/infendro/encoding/stream/Base2.kt +++ b/src/commonTest/kotlin/com/infendro/encoding/Base2.kt @@ -1,6 +1,5 @@ -package com.infendro.encoding.stream +package com.infendro.encoding -import com.infendro.encoding.Encoding import kotlin.test.Test import kotlin.test.assertContentEquals diff --git a/src/commonTest/kotlin/com/infendro/encoding/stream/Base32.kt b/src/commonTest/kotlin/com/infendro/encoding/Base32.kt similarity index 91% rename from src/commonTest/kotlin/com/infendro/encoding/stream/Base32.kt rename to src/commonTest/kotlin/com/infendro/encoding/Base32.kt index 76a63a1..5a10dfc 100644 --- a/src/commonTest/kotlin/com/infendro/encoding/stream/Base32.kt +++ b/src/commonTest/kotlin/com/infendro/encoding/Base32.kt @@ -1,6 +1,5 @@ -package com.infendro.encoding.stream +package com.infendro.encoding -import com.infendro.encoding.Encoding import kotlin.test.Test import kotlin.test.assertContentEquals diff --git a/src/commonTest/kotlin/com/infendro/encoding/numeric/Base36.kt b/src/commonTest/kotlin/com/infendro/encoding/Base36.kt similarity index 91% rename from src/commonTest/kotlin/com/infendro/encoding/numeric/Base36.kt rename to src/commonTest/kotlin/com/infendro/encoding/Base36.kt index cd55650..3dc916b 100644 --- a/src/commonTest/kotlin/com/infendro/encoding/numeric/Base36.kt +++ b/src/commonTest/kotlin/com/infendro/encoding/Base36.kt @@ -1,6 +1,5 @@ -package com.infendro.encoding.numeric +package com.infendro.encoding -import com.infendro.encoding.Encoding import kotlin.test.Test import kotlin.test.assertContentEquals diff --git a/src/commonTest/kotlin/com/infendro/encoding/numeric/Base56.kt b/src/commonTest/kotlin/com/infendro/encoding/Base56.kt similarity index 85% rename from src/commonTest/kotlin/com/infendro/encoding/numeric/Base56.kt rename to src/commonTest/kotlin/com/infendro/encoding/Base56.kt index 8f460a7..687ce11 100644 --- a/src/commonTest/kotlin/com/infendro/encoding/numeric/Base56.kt +++ b/src/commonTest/kotlin/com/infendro/encoding/Base56.kt @@ -1,6 +1,5 @@ -package com.infendro.encoding.numeric +package com.infendro.encoding -import com.infendro.encoding.Encoding import kotlin.test.Test import kotlin.test.assertContentEquals @@ -9,7 +8,7 @@ class `Base56 Test` { get() = Base56 val original = "Hello World!".encodeToByteArray() - val encoded = "4q9snPvV4iRDWVKjK".encodeToByteArray() + val encoded = "4Q9SNpVv4JrdwvjKj".encodeToByteArray() @Test fun `encode empty`() { diff --git a/src/commonTest/kotlin/com/infendro/encoding/numeric/Base58.kt b/src/commonTest/kotlin/com/infendro/encoding/Base58.kt similarity index 91% rename from src/commonTest/kotlin/com/infendro/encoding/numeric/Base58.kt rename to src/commonTest/kotlin/com/infendro/encoding/Base58.kt index 5da5d2a..5a8e82e 100644 --- a/src/commonTest/kotlin/com/infendro/encoding/numeric/Base58.kt +++ b/src/commonTest/kotlin/com/infendro/encoding/Base58.kt @@ -1,6 +1,5 @@ -package com.infendro.encoding.numeric +package com.infendro.encoding -import com.infendro.encoding.Encoding import kotlin.test.Test import kotlin.test.assertContentEquals diff --git a/src/commonTest/kotlin/com/infendro/encoding/numeric/Base62.kt b/src/commonTest/kotlin/com/infendro/encoding/Base62.kt similarity index 91% rename from src/commonTest/kotlin/com/infendro/encoding/numeric/Base62.kt rename to src/commonTest/kotlin/com/infendro/encoding/Base62.kt index b519ec5..fa67355 100644 --- a/src/commonTest/kotlin/com/infendro/encoding/numeric/Base62.kt +++ b/src/commonTest/kotlin/com/infendro/encoding/Base62.kt @@ -1,6 +1,5 @@ -package com.infendro.encoding.numeric +package com.infendro.encoding -import com.infendro.encoding.Encoding import kotlin.test.Test import kotlin.test.assertContentEquals diff --git a/src/commonTest/kotlin/com/infendro/encoding/stream/Base64.kt b/src/commonTest/kotlin/com/infendro/encoding/Base64.kt similarity index 91% rename from src/commonTest/kotlin/com/infendro/encoding/stream/Base64.kt rename to src/commonTest/kotlin/com/infendro/encoding/Base64.kt index 87dd90c..3ac84ef 100644 --- a/src/commonTest/kotlin/com/infendro/encoding/stream/Base64.kt +++ b/src/commonTest/kotlin/com/infendro/encoding/Base64.kt @@ -1,6 +1,5 @@ -package com.infendro.encoding.stream +package com.infendro.encoding -import com.infendro.encoding.Encoding import kotlin.test.Test import kotlin.test.assertContentEquals diff --git a/src/commonTest/kotlin/com/infendro/encoding/stream/Base8.kt b/src/commonTest/kotlin/com/infendro/encoding/Base8.kt similarity index 91% rename from src/commonTest/kotlin/com/infendro/encoding/stream/Base8.kt rename to src/commonTest/kotlin/com/infendro/encoding/Base8.kt index b7b3a08..3f16e9d 100644 --- a/src/commonTest/kotlin/com/infendro/encoding/stream/Base8.kt +++ b/src/commonTest/kotlin/com/infendro/encoding/Base8.kt @@ -1,6 +1,5 @@ -package com.infendro.encoding.stream +package com.infendro.encoding -import com.infendro.encoding.Encoding import kotlin.test.Test import kotlin.test.assertContentEquals