不受 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