ObservableValue.swift 514 B

12345678910111213141516171819202122232425262728
  1. //
  2. // ObservableValue.swift
  3. // LoopFollow
  4. //
  5. // Created by Jonas Björkert on 2024-07-25.
  6. // Copyright © 2024 Jon Fawcett. All rights reserved.
  7. //
  8. import Combine
  9. import Foundation
  10. import HealthKit
  11. import SwiftUI
  12. class ObservableValue<T>: ObservableObject {
  13. @Published var value: T
  14. init(default: T) {
  15. value = `default`
  16. }
  17. func set(_ newValue: T) {
  18. print("Setting new value: \(newValue)")
  19. DispatchQueue.main.async {
  20. self.value = newValue
  21. }
  22. }
  23. }