Coverage Summary for Class: StripeObjectSerializer (com.ghost.serialization.integration.model)
| Class |
Class, %
|
Method, %
|
Branch, %
|
Line, %
|
Instruction, %
|
| StripeObjectSerializer |
100%
(1/1)
|
83.3%
(5/6)
|
56.2%
(9/16)
|
65.2%
(15/23)
|
70.2%
(118/168)
|
@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 [StripeObject].
* Generated by GhostSerialization. Do not modify manually.
*/
public object StripeObjectSerializer : GhostSerializer<StripeObject> {
override val typeName: String = "StripeObject"
/**
* Robust deserialization for [StripeObject].
*/
override fun deserialize(reader: GhostJsonReader): StripeObject {
val typeName = reader.peekStringField("object") ?: reader.throwError("Missing discriminator field for sealed class")
val result = when (typeName) {
"Charge" -> StripeObject_ChargeSerializer.deserialize(reader)
"Refund" -> StripeObject_RefundSerializer.deserialize(reader)
else -> reader.throwError("Unknown type discriminator: $typeName")
}
return result
}
/**
* Robust deserialization for [StripeObject].
*/
override fun deserialize(reader: GhostJsonFlatReader): StripeObject {
val typeName = reader.peekStringField("object") ?: reader.throwError("Missing discriminator field for sealed class")
val result = when (typeName) {
"Charge" -> StripeObject_ChargeSerializer.deserialize(reader)
"Refund" -> StripeObject_RefundSerializer.deserialize(reader)
else -> reader.throwError("Unknown type discriminator: $typeName")
}
return result
}
override fun serialize(writer: GhostJsonWriter, `value`: StripeObject) {
when (value) {
is StripeObject.Charge -> StripeObject_ChargeSerializer.serialize(writer, value)
is StripeObject.Refund -> StripeObject_RefundSerializer.serialize(writer, value)
}
}
override fun serialize(writer: GhostJsonFlatWriter, `value`: StripeObject) {
when (value) {
is StripeObject.Charge -> StripeObject_ChargeSerializer.serialize(writer, value)
is StripeObject.Refund -> StripeObject_RefundSerializer.serialize(writer, value)
}
}
override fun warmUp() {
try {
val reader1 = GhostJsonReader("{}".encodeToByteArray())
deserialize(reader1)
} catch (_: Exception) {
}
try {
val reader2 = GhostJsonFlatReader("{}".encodeToByteArray())
deserialize(reader2)
} catch (_: Exception) {
}
}
}