Coverage Summary for Class: SmartDeviceSerializer (com.ghost.serialization.integration.model)
| Class |
Class, %
|
Method, %
|
Branch, %
|
Line, %
|
Instruction, %
|
| SmartDeviceSerializer |
100%
(1/1)
|
66.7%
(4/6)
|
31.2%
(5/16)
|
68%
(17/25)
|
55.2%
(85/154)
|
@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.parser.GhostJsonFlatReader
import com.ghost.serialization.parser.GhostJsonReader
import com.ghost.serialization.parser.peekStringField
import com.ghost.serialization.writer.GhostJsonFlatWriter
import com.ghost.serialization.writer.GhostJsonWriter
/**
* High-performance serializer for [SmartDevice].
* Generated by GhostSerialization. Do not modify manually.
*/
public object SmartDeviceSerializer : GhostSerializer<SmartDevice> {
override val typeName: String = "SmartDevice"
/**
* Robust deserialization for [SmartDevice].
*/
override fun deserialize(reader: GhostJsonReader): SmartDevice {
val typeName = reader.peekStringField("type")
val result = when (typeName) {
"Light" -> SmartDevice_LightSerializer.deserialize(reader)
"Thermostat" -> SmartDevice_ThermostatSerializer.deserialize(reader)
else -> {
SmartDevice_UnknownDeviceSerializer.deserialize(reader)
}
}
return result
}
/**
* Robust deserialization for [SmartDevice].
*/
override fun deserialize(reader: GhostJsonFlatReader): SmartDevice {
val typeName = reader.peekStringField("type")
val result = when (typeName) {
"Light" -> SmartDevice_LightSerializer.deserialize(reader)
"Thermostat" -> SmartDevice_ThermostatSerializer.deserialize(reader)
else -> {
SmartDevice_UnknownDeviceSerializer.deserialize(reader)
}
}
return result
}
override fun serialize(writer: GhostJsonWriter, `value`: SmartDevice) {
when (value) {
is SmartDevice.Light -> SmartDevice_LightSerializer.serialize(writer, value)
is SmartDevice.Thermostat -> SmartDevice_ThermostatSerializer.serialize(writer, value)
is SmartDevice.UnknownDevice -> SmartDevice_UnknownDeviceSerializer.serialize(writer, value)
}
}
override fun serialize(writer: GhostJsonFlatWriter, `value`: SmartDevice) {
when (value) {
is SmartDevice.Light -> SmartDevice_LightSerializer.serialize(writer, value)
is SmartDevice.Thermostat -> SmartDevice_ThermostatSerializer.serialize(writer, value)
is SmartDevice.UnknownDevice -> SmartDevice_UnknownDeviceSerializer.serialize(writer, value)
}
}
override fun warmUp() {
try {
val reader1 = GhostJsonReader("{}".encodeToByteArray())
deserialize(reader1)
} catch (_: Exception) {
}
try {
val reader2 = GhostJsonFlatReader("{}".encodeToByteArray())
deserialize(reader2)
} catch (_: Exception) {
}
}
}