我正在编写一个库,用于在Dart/Flutter中动态序列化/反序列化任何对象(类似于Python中的Pydantic)。然而,我发现实现最后一个组件——动态类型转换是不可能的。这是为了将JSON中的类型转换,例如从List到List(或类似的类型)。使用反射从对象中检索类型。
以下是期望的实现方式(但据我所知,在Dart中不可能实现)。
以下是期望的实现方式(但据我所知,在Dart中不可能实现)。
Map<String, Type> dynamicTypes = {"key": int };
// Regular casting would be "1" as int
int value = "1" as dynamicTypes["key"];
有没有一些解决办法使得这个可以实现?还是说我已经走到了死胡同(因此不存在其他动态序列化/反序列化包)。