Mirror no funciona en Swift cuando itera a través de niños de un object Objective-C

Tengo un problema muy extraño relacionado con el uso de Mirror in Swift. Estoy recorriendo todas las properties de una class llamada Prueba:

let test = Test() let mirror = Mirror(reflecting: test) for i in mirror.children { ... } 

Si implemento mi class de testing en Swift, tengo tres valores en los niños que se itera sobre:

 class Test: NSObject { var device: NSNumber! var version: NSNumber! var application: NSString! } 

Sin embargo, si implemento la class Prueba en el Objetivo C, obtendré cero hijos:

 @interface ObjectCTest : NSObject @property (nonatomic, strong) NSNumber *device; @property (nonatomic, strong) NSNumber *version; @property (nonatomic, strong) NSString *application; @end 

¿Alguien sabe lo que podría estar pasando? Estoy empezando a pensar que podría ser algo que ver con la configuration del proyecto Xcode, ya que tengo otros proyectos para los que esto funciona. ¡Se agradecen todas las sugerencias!

Mirror no parece funcionar con classs Objective-C. Pero, puede usar la function class_copyPropertyList para recuperar todas las properties de una class Objective-C.

 var outCount : UInt32 = 0 let properties = class_copyPropertyList(ObjectCTest.self, &outCount) print(outCount) for i : UInt32 in 0..<outCount { let strKey : NSString? = NSString(CString: property_getName(properties[Int(i)]), encoding: NSUTF8StringEncoding) let attrs : NSString? = NSString(CString: property_getAttributes(properties[Int(i)]), encoding: NSUTF8StringEncoding) print(strKey) print(attrs) }