Swift Language
OptionSet
Recherche…
Protocole OptionSet
OptionSetType est un protocole conçu pour représenter les types de masque de bits où les bits individuels représentent les membres de l'ensemble. Un ensemble de fonctions logiques et / ou de fonctions applique la syntaxe appropriée:
struct Features : OptionSet {
let rawValue : Int
static let none = Features(rawValue: 0)
static let feature0 = Features(rawValue: 1 << 0)
static let feature1 = Features(rawValue: 1 << 1)
static let feature2 = Features(rawValue: 1 << 2)
static let feature3 = Features(rawValue: 1 << 3)
static let feature4 = Features(rawValue: 1 << 4)
static let feature5 = Features(rawValue: 1 << 5)
static let all: Features = [feature0, feature1, feature2, feature3, feature4, feature5]
}
Features.feature1.rawValue //2
Features.all.rawValue //63
var options: Features = [.feature1, .feature2, .feature3]
options.contains(.feature1) //true
options.contains(.feature4) //false
options.insert(.feature4)
options.contains(.feature4) //true
var otherOptions : Features = [.feature1, .feature5]
options.contains(.feature5) //false
options.formUnion(otherOptions)
options.contains(.feature5) //true
options.remove(.feature5)
options.contains(.feature5) //false
Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow