我有一个通用类型A类
class A<T> {
....
}
其他B类具有某些属性的类型是A
class B {
var propOne: A<String>
var propTwo: A<Int>
...
}
现在使用Mirror
扫描所有属性,我需要将值强制转换为A
var mineB = B(...)
let mirror = Mirror(reflecting: mineB)
for case let (label?, value) in mirror.children {
...
let objA = value as? A
}
但是编译器错误为Generic parameter 'T' could not be inferred in cast to 'CSRObject<_>'
更新let objA = value as? A<Swift.String>
但这意味着我比较所有类型
如何让我快速投射?