swift-如何将Any转换为其他类并分配泛型

时间:2019-03-16 06:33:02

标签: swift generics casting

我有一个通用类型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>

可以

但这意味着我比较所有类型

如何让我快速投射?

0 个答案:

没有答案