Feature

struct Feature

Switch cluster FeatureMap.

  • The corresponding value of the raw type.

    A new instance initialized with rawValue will be equivalent to this instance. For example:

    enum PaperSize: String {
        case A4, A5, Letter, Legal
    }
    
    let selectedSize = PaperSize.Letter
    print(selectedSize.rawValue)
    // Prints "Letter"
    
    print(selectedSize == PaperSize(rawValue: selectedSize.rawValue)!)
    // Prints "true"
    

    Declaration

    Swift

    let rawValue: UInt32
  • Creates a new option set from the given raw value.

    This initializer always succeeds, even if the value passed as rawValue exceeds the static properties declared as part of the option set. This example creates an instance of ShippingOptions with a raw value beyond the highest element, with a bit mask that effectively contains all the declared static members.

    let extraOptions = ShippingOptions(rawValue: 255)
    print(extraOptions.isStrictSuperset(of: .all))
    // Prints "true"
    

    Declaration

    Swift

    init(rawValue: UInt32)

    Parameters

    rawValue

    The raw value of the option set to create. Each bit of rawValue potentially represents an element of the option set, though raw values may include bits that are not defined as distinct values of the OptionSet type.

  • The latching switch (such as a rocker) maintains its position after being pressed or turned.

    Declaration

    Swift

    static let latchingSwitch: Matter.SwitchTrait.Feature
  • The momentary switch (such as a push button) does not maintain its position after being pressed or turned. After releasing, it goes back to its idle position.

    Declaration

    Swift

    static let momentarySwitch: Matter.SwitchTrait.Feature
  • The momentary switch (such as a push button) can distinguish and report release events.

    Declaration

    Swift

    static let momentarySwitchRelease: Matter.SwitchTrait.Feature
  • The momentary switch (such as a push button) can distinguish and report long pressed from short presses.

    Declaration

    Swift

    static let momentarySwitchLongPress: Matter.SwitchTrait.Feature
  • The momentary switch (such as a push button) can distinguish and report double press and potentially multiple presses with more events, such as a triple press.

    Declaration

    Swift

    static let momentarySwitchMultiPress: Matter.SwitchTrait.Feature