Obj-C 到 Swift 桥接问题:NS_ENUM -> enum
Obj-C to Swift Bridging issues: NS_ENUM -> enum
我在 Swift 项目中使用带有桥接的 Obj-C 库。除了具有自定义值的 NS_ENUM 外,一切正常:
Obj-C(原创)
typedef NS_ENUM(NSInteger, HTTPStatusCode) {
// Informational 1xx
HTTPStatusCodeContinue = 100,
HTTPStatusCodeSwitchingProtocols = 101,
HTTPStatusCodeProcessing = 102,
HTTPStatusCodeCheckpoint = 103,
...
Swift(有桥接)
enum HTTPStatusCode : Int {
// Informational 1xx
case Continue
case SwitchingProtocols
case Processing
case Checkpoint
...
桥接的 NS_ENUM 实现如何正确转换为 Swift?
我认为您在此处发布的是自动生成的 Swift 代码,这意味着它省略了实现细节。
好消息是它仍然按照您期望的方式工作:
let x: HTTPStatusCode = .Continue
println("Continue = \(x.rawValue)")
打印100
我在 Swift 项目中使用带有桥接的 Obj-C 库。除了具有自定义值的 NS_ENUM 外,一切正常:
Obj-C(原创)
typedef NS_ENUM(NSInteger, HTTPStatusCode) {
// Informational 1xx
HTTPStatusCodeContinue = 100,
HTTPStatusCodeSwitchingProtocols = 101,
HTTPStatusCodeProcessing = 102,
HTTPStatusCodeCheckpoint = 103,
...
Swift(有桥接)
enum HTTPStatusCode : Int {
// Informational 1xx
case Continue
case SwitchingProtocols
case Processing
case Checkpoint
...
桥接的 NS_ENUM 实现如何正确转换为 Swift?
我认为您在此处发布的是自动生成的 Swift 代码,这意味着它省略了实现细节。
好消息是它仍然按照您期望的方式工作:
let x: HTTPStatusCode = .Continue
println("Continue = \(x.rawValue)")
打印100