Coverage Summary for Class: HomeStatusSerializer (com.ghost.serialization.integration.model)

Class Method, % Branch, % Line, % Instruction, %
HomeStatusSerializer 71.4% (5/7) 10% (1/10) 45.8% (11/24) 58.1% (90/155)
HomeStatusSerializer$WhenMappings
Total 71.4% (5/7) 10% (1/10) 45.8% (11/24) 58.1% (90/155)


 @file:OptIn(InternalGhostApi::class)
 
 package com.ghost.serialization.integration.model
 
 import com.ghost.serialization.InternalGhostApi
 import com.ghost.serialization.contract.GhostSerializer
 import com.ghost.serialization.exception.GhostJsonException
 import com.ghost.serialization.parser.GhostJsonFlatReader
 import com.ghost.serialization.parser.GhostJsonReader
 import com.ghost.serialization.parser.JsonReaderOptions
 import com.ghost.serialization.parser.selectString
 import com.ghost.serialization.writer.GhostJsonFlatWriter
 import com.ghost.serialization.writer.GhostJsonWriter
 
 /**
  * High-performance serializer for [HomeStatus].
  * Generated by GhostSerialization. Do not modify manually.
  */
 public object HomeStatusSerializer : GhostSerializer<HomeStatus> {
   override val typeName: String = "HomeStatus"
 
   private val ENUM_OPTIONS: JsonReaderOptions =
       JsonReaderOptions.of(0, 31, 128, false, "ONLINE", "OFFLINE")
 
   /**
    * Robust deserialization for [HomeStatus].
    */
   override fun deserialize(reader: GhostJsonReader): HomeStatus {
     val index = reader.selectString(ENUM_OPTIONS)
     return when (index) {
       0 -> HomeStatus.ONLINE
       1 -> HomeStatus.OFFLINE
       -1 -> reader.throwError("Invalid enum value")
       else -> throw GhostJsonException("Unexpected index: $index")
     }
   }
 
   /**
    * Robust deserialization for [HomeStatus].
    */
   override fun deserialize(reader: GhostJsonFlatReader): HomeStatus {
     val index = reader.selectString(ENUM_OPTIONS)
     return when (index) {
       0 -> HomeStatus.ONLINE
       1 -> HomeStatus.OFFLINE
       -1 -> reader.throwError("Invalid enum value")
       else -> throw GhostJsonException("Unexpected index: $index")
     }
   }
 
   override fun serialize(writer: GhostJsonWriter, `value`: HomeStatus) {
     when (value) {
       HomeStatus.ONLINE -> writer.value("ONLINE")
       HomeStatus.OFFLINE -> writer.value("OFFLINE")
     }
   }
 
   override fun serialize(writer: GhostJsonFlatWriter, `value`: HomeStatus) {
     when (value) {
       HomeStatus.ONLINE -> writer.value("ONLINE")
       HomeStatus.OFFLINE -> writer.value("OFFLINE")
     }
   }
 
   override fun warmUp() {
     try {
       val reader1 = GhostJsonReader("{}".encodeToByteArray())
       deserialize(reader1)
     } catch (_: Exception) {
     }
     try {
       val reader2 = GhostJsonFlatReader("{}".encodeToByteArray())
       deserialize(reader2)
     } catch (_: Exception) {
     }
   }
 }