Я переношу некоторый код объектива-c в Swift. Мне нужно проверить битовую маску, но я получаю сообщение об ошибке:Использование Objective-C bitmask в Swift
MCOMessageFlag is not convertible to Bool
Как я должен быть доступ к этим от Swift.
self.message.flags = NSNumber(int: self.message.flags.intValue & ~MCOMessageFlag.Flagged)
Я пользуюсь библиотекой MailCore2.
Edit:
Вот линия Objective-C Я портировании:
[self.message setFlags:[NSNumber numberWithInt: self.message.flags.intValue & ~MCOMessageFlagFlagged]];
Edit:
RawOptionSetType no longer implements BooleanType by default, so standard bitmask checks (if opt & .Option {...) only work if you add BooleanType protocol conformance manually.
Я предполагаю, что это моя проблема.
Это была моя первая мысль, но это не помогло. Ошибка просто изменилась на: '' 'Int не конвертируется в Bool'''. Я добавил строку цели-c, которую я переношу, если это поможет. –
Флаги - NSNumber. –
CMD-Нажмите «MCOMessageFlag», чтобы увидеть определение. Это может дать ключ. –