public interface DsonCodecRegistry
编解码器注册表
- 作者:
- wjybxx date 2023/4/3
-
方法概要
修饰符和类型方法说明<T> DsonCodecImpl<T> getDecoder(Class<T> clazz, DsonCodecRegistry rootRegistry) 查找解码器(decoder)。<T> DsonCodecImpl<? super T> getEncoder(Class<T> clazz, DsonCodecRegistry rootRegistry) 查找编码器(encoder)。
-
方法详细资料
-
getEncoder
查找编码器(encoder)。 编码器可以接收子类实例,将子类实例按照超类编码,子类特殊数据丢弃。- 参数:
rootRegistry- 用于比如想转换为查询超类的Encoder
-
getDecoder
查找解码器(decoder)。 解码器必须目标类型一致,子类Codec不能安全解码超类数据,超类Codec返回的实例不能向下转型。ps:在Java端其实可以有所变通,因为Java是伪泛型,因此
Codec<BaseType>可以赋值给Codec<SubType>, 因此如果超类的Codec创建的实例可以向下转型为参数目标类型,那么是可以返回超类的Codec的。- 参数:
rootRegistry- 用于转换为查询子类的Decoder
-