polymorphicDefaultDeserializer
abstract fun <Base : Any> polymorphicDefaultDeserializer(baseClass: KClass<Base>, defaultDeserializerProvider: (className: String?) -> DeserializationStrategy<Base>?)(source)
Accept a default deserializer provider, associated with the baseClass for polymorphic deserialization. defaultDeserializerProvider is invoked when no polymorphic serializers associated with the className
in the scope of baseClass were found. className
could be null
for formats that support nullable class discriminators (currently only Json
with useArrayPolymorphism
set to false
).
Default deserializers provider affects only deserialization process. Serializers are accepted in the SerializersModuleCollector.polymorphicDefaultSerializer method.
defaultDeserializerProvider can be stateful and lookup a serializer for the missing type dynamically.