Slide 11
Slide 11 text
&YQBOE.BDSP
6TJOH0CTFSWBUJPO
@Observable class FoodTruckModel {
@ObservationTracked
var orders: [Order] = []
@ObservationTracked
var donuts = Donut.all
@ObservationIgnored private let _$observationRegistrar = ObservationRegistrar()
internal nonisolated func access(
keyPath: KeyPath
) {
_$observationRegistrar.access(self, keyPath: keyPath)
}
internal nonisolated func withMutation(
keyPath: KeyPath,
_ mutation: () throws -> T
) rethrows -> T {
try _$observationRegistrar.withMutation(of: self, keyPath: keyPath, mutation)
}
@ObservationIgnored private var _orders: [Order] = []
@ObservationIgnored private var _donuts = Donut.all
}
extension FoodTruckModel : Observable {}