Payload

annotation class Payload

Marks a type parameter as the application payload. The generated codec will provide a scoped PayloadReader for decoding.

@ProtocolMessage
data class Packet<@Payload P>(
val version: UByte,
@LengthPrefixed val payload: P,
)
// Generates PacketCodec with a PayloadReader context for decoding P