2015-06-06 2 views
2

Я использую Obj-C lib в проекте Swift с мостом. Все в порядке, за исключением NS_ENUM с таможенной стоимостью:Obj-C to Swift Проблемы с мостом: NS_ENUM -> 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 правильно?

+0

Фактически Значение Swift произведет в мостиках являются строчным --- .continue .switchingProtocols .processing .checkpoint –

ответ

1

Я думаю, что вы разместили здесь автоматически генерируемый код Swift, что означает, что он опускает детали реализации.

Хорошая новость заключается в том, что он все еще работает так же, как и следовало ожидать:

let x: HTTPStatusCode = .Continue 
println("Continue = \(x.rawValue)") 

печатает 100

+0

Это нормально - но что с именем значения --- есть ли какой-либо способ в Swift для печати значения x - 'continue' ??? Я не мог найти способ сделать это --- и большинство Cocoa и Cocoa-Touch раскрывают NS_Enum's –

Смежные вопросы