StateReader

struct StateReader
extension StateReader : Equatable, Hashable, Identifiable, Node, NodeWithOutput, Sendable

A class that accesses a trait’s state, used for conditions.

  • id

    The stable identity of the entity associated with this instance.

    Declaration

    Swift

    let id: String
  • The unique entity for the HomeDevice or Structure entity associated with the StateReader.

    Declaration

    Swift

    let entity: any HomeObject
  • The identifier of the DeviceType associated with the StateReader, if the entity is a device.

    Declaration

    Swift

    let deviceType: (any DeviceType.Type)?
  • The string-based identifier for the DeviceType. If the deviceType is UnknownDeviceType it will refer to the original DeviceType ID provided.

    Declaration

    Swift

    let deviceTypeID: String?
  • The Trait associated with the StateReader.

    Declaration

    Swift

    let trait: any Trait.Type
  • The string-based identifier for the Trait. If the trait is UnknownTrait it will refer to the original Trait ID provided.

    Declaration

    Swift

    let traitID: String
  • The unique ID for the StateReader node output. Must be unique per Automation

    Declaration

    Swift

    let output: String
  • Returns a Boolean value indicating whether two values are equal.

    Equality is the inverse of inequality. For any values a and b, a == b implies that a != b is false.

    Declaration

    Swift

    static func == (lhs: StateReader, rhs: StateReader) -> Bool

    Parameters

    lhs

    A value to compare.

    rhs

    Another value to compare.

  • Returns true if the nodes are equal, false otherwise.

    Declaration

    Swift

    func isEqual(to other: any Node) -> Bool