これは他の言語でも可能であることがわかりましたが、objective-c ではこのようなものが必要です
これに似た列挙型があります
typedef enum {
  option1 = 1 << 0,
  option2 = 1 << 1,
  option3 = 1 << 2
...
...
} SomePossibleOptions;
その後、ユーザーは必要なオプションのマスクを作成できます
SomePossibleOptions myOptions = option1 | option2;
[self.someObject performOperationsForOptions:myOptions];
-(void)performOperationsForOptions:(SomePossibleOptions)theOptions
{
if (myOptions & option1)
{
  // do something
}
if (myOptions & option2
{
 // do something
}
//(could use a switch statement)
}
しかし、むしろある種の構文を使用したい
foreach (option in myoption)
{
  //do something
}