有一种方法可以在Swift中扩展现有的可解码结构(我不控制一个)以在解码过程中为某些属性提供默认值吗?
,例如,假设库提供了以下内容:
struct TheirStruct: Decodable {
var foo: String
var bar: String
}
我想使用
JSONDecoder
来启动其中之一,但是在我的情况下,如果我在json中不存在的话,我希望有一个默认值(我在编译时选择)。
我知道我可以包装这种类型并自己做,但是我有大约35个需要这样做,如果可能的话,我宁愿不包装它们。这里是我对我有用的测试代码:
bar