1 // This file was automatically generated from formats.md by Knit tool. Do not edit. 2 package example.exampleFormats07 3 4 import kotlinx.serialization.* 5 import kotlinx.serialization.protobuf.* 6 <lambda>null7fun ByteArray.toAsciiHexString() = joinToString("") { 8 if (it in 32..127) it.toInt().toChar().toString() else 9 "{${it.toUByte().toString(16).padStart(2, '0').uppercase()}}" 10 } 11 12 @Serializable 13 data class Data( 14 val a: List<Int> = emptyList(), 15 val b: List<Int> = emptyList() 16 ) 17 18 @OptIn(ExperimentalSerializationApi::class) mainnull19fun main() { 20 val data = Data(listOf(1, 2, 3), listOf()) 21 val bytes = ProtoBuf.encodeToByteArray(data) 22 println(bytes.toAsciiHexString()) 23 println(ProtoBuf.decodeFromByteArray<Data>(bytes)) 24 } 25