Swift 標準ライブラリ   >   OptionSet   >   remove(_:)
インスタンスメソッド
remove(_:)
与えられた要素と、それによって包含されるすべての要素を削除します。
宣言
パラメータ
member | 削除すべきセットの要素。 |
戻り値
交差が空でない場合、[member] とセットの交差。そうでなければ、nil。
議論
以下の例では、.priority 配送オプションが options オプションセットから削除されています。options に .priority がメンバーとして含まれていないため、同じ配送オプションを 2 回目に削除しようとすると nil になります。
リスト 1
var options: ShippingOptions = [.secondDay, .priority] let priorityOption = options.remove(.priority) print(priorityOption == .priority) // Prints "true" print(options.remove(.priority)) // Prints "nil"
次の例では、.express 要素が remove(_:) に渡されます。.express は options のメンバーではありませんが、.express はオプションセットの残りの .secondDay 要素を包含します。したがって、options は空になり、.express と options の間の交差が返されます。
リスト 2
let expressOption = options.remove(.express) print(expressOption == .express) // Prints "false" print(expressOption == .secondDay) // Prints "true"