В документации Apple о взаимодействии с API-интерфейсами C они описывают способ импортирования перечислений в стиле C, помеченных NS_ENUM
, как перечисления Swift. Это имеет смысл, и поскольку перечисления в Swift легко предоставляются как тип значения enum
, легко понять, как создать наш собственный.
Далее говорится об опциях в стиле C, помеченных NS_OPTIONS
:
Swift также импортирует опции, помеченные макросом
NS_OPTIONS
. Принимая во внимание, что опции ведут себя подобно импортированным перечислениям, опции также могут поддерживать некоторые побитовые операции, такие как&
,|
и~
. В Objective-C вы представляете пустой набор параметров с постоянным нулем (0
). В Swift используйтеnil
для представления отсутствия каких-либо опций.
Учитывая, что в Swift нет типа значения options
, как мы можем создать переменную параметров C-Style для работы?