From c9dca768706118ecaf60408a1d75e38b47743923 Mon Sep 17 00:00:00 2001 From: DBotThePony Date: Tue, 18 Mar 2025 18:55:55 +0700 Subject: [PATCH] Provide Unit (singleton) codecs --- .../ru/dbotthepony/mc/otm/network/MatteryStreamCodec.kt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/network/MatteryStreamCodec.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/network/MatteryStreamCodec.kt index aff3394b6..a217ec302 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/network/MatteryStreamCodec.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/network/MatteryStreamCodec.kt @@ -35,6 +35,14 @@ interface MatteryStreamCodec : StreamCodec<@UnsafeVariance S, } } + class MUnit(val value: V) : MatteryStreamCodec { + override fun decode(stream: ByteBuf): V { + return value + } + + override fun encode(stream: ByteBuf, value: V) {} + } + abstract class AbstractPair(private val first: MatteryStreamCodec, private val second: MatteryStreamCodec) : MatteryStreamCodec { protected abstract fun getFirst(value: P): A protected abstract fun getSecond(value: P): B