struct TimeTraitRepresents several Time related attributes for the current Structure.
-
The trait identifier.
Declaration
Swift
static let identifier: String -
List of the event types that are supported by
TimeTrait.Declaration
Swift
static let supportedEventTypes: [any Event.Type] -
List of the commands that are supported.
Declaration
Swift
static let supportedCommandTypes: [any Command.Type] -
Metadata about this
Trait.Declaration
Swift
let metadata: TraitMetadata -
Creates a new Trait instance using data read from the given
TraitDecoder.Throws
HomeError.parseErrorwhen parsing fails.Declaration
Swift
init(decoder: TraitDecoder, interactionProxy: (any InteractionProxy)?, metadata: TraitMetadata) throwsParameters
decoderThe raw data representing this Trait.
interactionProxyProxy to the Interaction Client.
metadataMetadata about this Trait.
-
Writes this object to the given
TraitEncoder. ThrowsHomeError.encodingFailedif the data could not be encoded.Declaration
Swift
func encode(with encoder: TraitEncoder) throws -
Returns a Boolean value indicating whether two values are equal.
Equality is the inverse of inequality. For any values
aandb,a == bimplies thata != bisfalse.Parameters
lhsA value to compare.
rhsAnother value to compare.
-
Hashes the essential components of this value by feeding them into the given hasher.
Implement this method to conform to the
Hashableprotocol. The components used for hashing must be the same as the components compared in your type’s==operator implementation. Callhasher.combine(_:)with each of these components.Important
In your implementation of
hash(into:), don’t callfinalize()on thehasherinstance provided, or replace it with a different instance. Doing so may become a compile-time error in the future.Declaration
Swift
func hash(into hasher: inout Hasher) -
The event that will be subscribed to when an automation needs to be scheduled.
Declaration
Swift
struct ScheduledEvent -
The event that will be subscribed to when an automation needs to be scheduled recurringly.
Declaration
Swift
struct RecurringClockTimeScheduledEvent -
The event that will be subscribed to when an automation needs to be scheduled recurringly.
Declaration
Swift
struct RecurringSolarTimeScheduledEvent