Swiftのclass_copyPropertyListメソッドについて調べてみました。
class_copyPropertyListを使うと下のようにプロパティ名を取得できます。
class MyClass: NSObject { var prop1 = "" var prop2 = "" } var count: UInt32 = 0 let properties = class_copyPropertyList(MyClass.self, &count) for i in 0..<Int(count) { let prop = properties[i] let propName = NSString(UTF8String: property_getName(prop)) }
propertiesを見たところUnsafeMutablePointer
var count: UInt32 = 0 let properties = class_copyPropertyList(MyClass.self, &count) print(properties.dynamicType) // → UnsafeMutablePointer<COpaquePointer>