Swift2 反射雨燕2.0 XCode 7 beta 5

Swift2 反射雨燕2.0 XCode 7 beta 5,swift2,xcode7-beta5,Swift2,Xcode7 Beta5,苹果改变了XCode 7 beta 5中的快速反射。global reflect()函数已不存在,您必须执行以下操作: let mirror = Mirror(reflecting: object) 它以更好的方式提供了大致相同的信息(propertyname和value不超过.1og.2)。但是我找不到一种方法来研究镜像项是否是类的实例。 对于较旧的实现,您可以检查以下内容: reflectedProperty.1.objectIdentifier != nil || reflectedPr

苹果改变了XCode 7 beta 5中的快速反射。global reflect()函数已不存在,您必须执行以下操作:

let mirror = Mirror(reflecting: object)
它以更好的方式提供了大致相同的信息(propertyname和value不超过.1og.2)。但是我找不到一种方法来研究镜像项是否是类的实例。 对于较旧的实现,您可以检查以下内容:

reflectedProperty.1.objectIdentifier != nil || reflectedProperty.1.count > 0
但是objectIdentifier似乎不见了,不管类型如何,计数总是2


有人帮忙吗?

好的,我找到了解决办法。我在mirror.children.enumerate()上迭代,它似乎使String类型的所有属性都成为字符串。相反,我深入研究了苹果公司的初步文档,并读到将儿童“升级”到AnyRandomAccessCollection可能是个好主意。这使得可以依靠对象子对象的计数来确定它是否是对象(在测试它是否是数组之后)

目前,如果您对代码感兴趣,我有一个功能强大的Swift类来实现JSON序列化程序

我不确定您是否正在查找此文件,但以下文件的输出是“类”

mirror.displayStyle