ObservableMutableMetaSerializer
This commit is contained in:
parent
e5902c0bfe
commit
de9ca6e009
@ -4,6 +4,7 @@
|
||||
|
||||
### Added
|
||||
- Coroutine exception logging in context
|
||||
- ObservableMutableMetaSerializer
|
||||
|
||||
### Changed
|
||||
- Simplify inheritance logic in `MutableTypedMeta`
|
||||
|
@ -45,4 +45,21 @@ public object MutableMetaSerializer : KSerializer<MutableMeta> {
|
||||
override fun serialize(encoder: Encoder, value: MutableMeta) {
|
||||
encoder.encodeSerializableValue(MetaSerializer, value)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* A serializer for [ObservableMutableMeta]
|
||||
*/
|
||||
public object ObservableMutableMetaSerializer : KSerializer<ObservableMutableMeta> {
|
||||
|
||||
override val descriptor: SerialDescriptor = MetaSerializer.descriptor
|
||||
|
||||
override fun deserialize(decoder: Decoder): ObservableMutableMeta {
|
||||
val meta = decoder.decodeSerializableValue(MetaSerializer)
|
||||
return ((meta as? MutableMeta) ?: meta.toMutableMeta()).asObservable()
|
||||
}
|
||||
|
||||
override fun serialize(encoder: Encoder, value: ObservableMutableMeta) {
|
||||
encoder.encodeSerializableValue(MetaSerializer, value)
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user