OptionalMeasurementProperty

@propertyWrapper
public final class OptionalMeasurementProperty<Unit> : UpdatableProperty, Equatable where Unit : Unit
  • Declaration

    Swift

    public typealias Value = Measurement<Unit>?
  • Declaration

    Swift

    public static func == (
        lhs: OptionalMeasurementProperty<Unit>, rhs: OptionalMeasurementProperty<Unit>
    ) -> Bool
  • Declaration

    Swift

    public var wrappedValue: Value { get set }
  • Declaration

    Swift

    public var projectedValue: ReadOnlyProperty<OptionalMeasurementProperty<Unit>> { get }

Property Requirements

  • The latest snapshot of data.

    Declaration

    Swift

    @Published
    public internal(set) var snapshot: Snapshot<Value> { get set }
  • A human-friendly display name that describes the property.

    Declaration

    Swift

    public let displayName: String
  • A formatter that can be used to build a human-friendly string from the value.

    Declaration

    Swift

    public let formatter: MeasurementFormatter
  • Declaration

    Swift

    public var snapshotsPublisher: AnyPublisher<Snapshot<Value>, Never> { get }

Measurement Properties

  • Declaration

    Swift

    public var measurement: Value { get }
  • Declaration

    Swift

    public private(set) var unit: Unit { get }
  • Declaration

    Swift

    public var measuredValue: Double? { get }

Initialisers

Update Functions

Available where Unit: Foundation.Dimension

  • Declaration

    Swift

    public convenience init(
        displayName: String,
        value measuredValue: Double? = nil,
        dimention: Unit = .baseUnit(),
        formatter: MeasurementFormatter = MeasurementFormatter(),
        date: Date = Date()
    )