cleanup warnings

This commit is contained in:
John Estropia
2026-07-29 13:56:43 +09:00
parent 802065e85a
commit 838637f29f
2 changed files with 16 additions and 9 deletions
+15 -8
View File
@@ -72,7 +72,7 @@ public final class ObjectMonitor<O: DynamicObject>: Hashable, ObjectRepresentati
- parameter observer: an `ObjectObserver` to send change notifications to
*/
@MainActor
public func addObserver<U: ObjectObserver & Sendable>(_ observer: U)
public func addObserver<U: ObjectObserver>(_ observer: U)
where U.ObjectEntityType == O {
self.unregisterObserver(observer)
@@ -261,7 +261,7 @@ public final class ObjectMonitor<O: DynamicObject>: Hashable, ObjectRepresentati
}
@MainActor
internal func registerObserver<U: AnyObject & Sendable>(
internal func registerObserver<U: AnyObject>(
_ observer: U,
willChangeObject: @escaping @Sendable (
_ observer: U,
@@ -285,13 +285,17 @@ public final class ObjectMonitor<O: DynamicObject>: Hashable, ObjectRepresentati
Thread.isMainThread,
"Attempted to add an observer of type \(Internals.typeName(observer as AnyObject)) outside the main thread."
)
nonisolated(unsafe) weak let weakObserver = observer as Optional
self.registerChangeNotification(
&self.willChangeObjectKey,
name: Notification.Name.objectMonitorWillChangeObject,
toObserver: observer,
callback: { [weak observer] (monitor) -> Void in
callback: { (monitor) -> Void in
guard let object = monitor.object, let observer = observer else {
guard
let observer = weakObserver,
let object = monitor.object
else {
return
}
@@ -302,9 +306,9 @@ public final class ObjectMonitor<O: DynamicObject>: Hashable, ObjectRepresentati
&self.didDeleteObjectKey,
name: Notification.Name.objectMonitorDidDeleteObject,
toObserver: observer,
callback: { [weak observer] (monitor, object) -> Void in
callback: { (monitor, object) -> Void in
guard let observer = observer else {
guard let observer = weakObserver else {
return
}
@@ -315,9 +319,12 @@ public final class ObjectMonitor<O: DynamicObject>: Hashable, ObjectRepresentati
&self.didUpdateObjectKey,
name: Notification.Name.objectMonitorDidUpdateObject,
toObserver: observer,
callback: { [weak self, weak observer] (monitor, object) -> Void in
callback: { [weak self] (monitor, object) -> Void in
guard let self = self, let observer = observer else {
guard
let self = self,
let observer = weakObserver
else {
return
}
+1 -1
View File
@@ -36,7 +36,7 @@ import CoreData
monitor.addObserver(self)
```
*/
public protocol ObjectObserver: AnyObject, Sendable {
public protocol ObjectObserver: AnyObject, SendableMetatype {
/**
The `DynamicObject` type for the observed object