不受 CustomReflectable
影响的 Mirror
实现。
如果对象遵循 CustomReflectable
,普通的 Mirror
可能无法正确地获取属性信息。
例如,以下结构会返回空的子属性。
struct Item: CustomReflectable {
let title: String
let value: Int
var customMirror: Mirror {
.init(self, children: [])
}
}
我创建了 MagicMirror
,以便在这种情况下可以正确地获取信息!
只需将 MagicMirror
替换为普通的 Mirror
即可。
MagicMirror 基于 MIT 许可发布。参见 LICENSE