@@ -209,36 +209,37 @@ For `MainActorMessage`:
209
209
@available (FoundationPreview 0.5, * )
210
210
extension NotificationCenter {
211
211
// e.g. addObserver(of: workspace, for: .willLaunchApplication) { message in ... }
212
- public func addObserver <I : MessageIdentifier , M : MainActorMessage >(of subject : M.Subject,
213
- for identifier : I ,
214
- using observer : @escaping @MainActor (M) -> Void )
215
- -> ObservationToken where I. MessageType == M,
216
- M .Subject : AnyObject
212
+ public func addObserver <Identifier : MessageIdentifier , Message : MainActorMessage >(
213
+ of subject : Message.Subject ,
214
+ for identifier : Identifier,
215
+ using observer : @escaping @MainActor (Message) -> Void
216
+ ) -> ObservationToken where Identifier.MessageType == Message, Message .Subject: AnyObject
217
217
218
- public func addObserver <I : MessageIdentifier , M : MainActorMessage >(of subject : M.Subject,
219
- for identifier : I,
220
- using observer : @escaping @MainActor (M) -> Void )
221
- -> ObservationToken where I.MessageType == M,
222
- M.Subject : Identifiable,
223
- M.Subject .ID == ObjectIdentifier
218
+ public func addObserver <Identifier : MessageIdentifier , Message : MainActorMessage >(
219
+ of subject : Message.Subject,
220
+ for identifier : Identifier,
221
+ using observer : @escaping @MainActor (Message) -> Void
222
+ ) -> ObservationToken where Identifier.MessageType == Message, Message.Subject: Identifiable , Message.Subject.ID == ObjectIdentifier
224
223
225
224
// e.g. addObserver(of: NSWorkspace.self, for: .willLaunchApplication) { message in ... }
226
- public func addObserver <I : MessageIdentifier , M : MainActorMessage >(of subject : M.Subject.Type ,
227
- for identifier : I,
228
- using observer : @escaping @MainActor (M) -> Void )
229
- -> ObservationToken where I.MessageType == M
225
+ public func addObserver <Identifier : MessageIdentifier , Message : MainActorMessage >(
226
+ of subject : Message.Subject.Type ,
227
+ for identifier : Identifier,
228
+ using observer : @escaping @MainActor (Message) -> Void
229
+ ) -> ObservationToken where Identifier.MessageType == Message
230
230
231
231
// e.g. addObserver(for: NSWorkspace.WillLaunchApplication.self) { message in ... }
232
- public func addObserver <M : MainActorMessage >(of subject : M.Subject? = nil ,
233
- for messageType : M.Type ,
234
- using observer : @escaping @MainActor (M) -> Void )
235
- -> ObservationToken where M.Subject : AnyObject
236
-
237
- public func addObserver <M : MainActorMessage >(of subject : M.Subject? = nil ,
238
- for messageType : M.Type ,
239
- using observer : @escaping @MainActor (M) -> Void )
240
- -> ObservationToken where M.Subject : Identifiable,
241
- M.Subject .ID == ObjectIdentifier
232
+ public func addObserver <Message : MainActorMessage >(
233
+ of subject : Message.Subject? = nil ,
234
+ for messageType : Message.Type ,
235
+ using observer : @escaping @MainActor (Message) -> Void
236
+ ) -> ObservationToken where Message.Subject: AnyObject
237
+
238
+ public func addObserver <Message : MainActorMessage >(
239
+ of subject : Message.Subject? = nil ,
240
+ for messageType : Message.Type ,
241
+ using observer : @escaping @MainActor (Message) -> Void
242
+ ) -> ObservationToken where Message.Subject: Identifiable , Message.Subject.ID == ObjectIdentifier
242
243
}
243
244
```
244
245
@@ -247,34 +248,35 @@ And for `AsyncMessage`:
247
248
``` swift
248
249
@available (FoundationPreview 0.5, * )
249
250
extension NotificationCenter {
250
- public func addObserver <I : MessageIdentifier , M : AsyncMessage >(of subject : M.Subject,
251
- for identifier : I ,
252
- using observer : @escaping @Sendable (M) async -> Void )
253
- -> ObservationToken where I. MessageType == M,
254
- M .Subject : AnyObject
255
-
256
- public func addObserver <I : MessageIdentifier , M : AsyncMessage >(of subject : M.Subject,
257
- for identifier : I ,
258
- using observer : @escaping @Sendable (M) async -> Void )
259
- -> ObservationToken where I. MessageType == M,
260
- M .Subject : Identifiable,
261
- M. Subject . ID == ObjectIdentifier
262
-
263
- public func addObserver < I : MessageIdentifier , M : AsyncMessage >( of subject : M .Subject.Type ,
264
- for identifier : I ,
265
- using observer : @escaping @Sendable (M ) async -> Void )
266
- -> ObservationToken where I .MessageType == M
251
+ public func addObserver <Identifier : MessageIdentifier , Message : AsyncMessage >(
252
+ of subject : Message.Subject ,
253
+ for identifier : Identifier,
254
+ using observer : @escaping @Sendable (Message) async -> Void
255
+ ) -> ObservationToken where Identifier.MessageType == Message, Message .Subject: AnyObject
256
+
257
+ public func addObserver <Identifier : MessageIdentifier , Message : AsyncMessage >(
258
+ of subject : Message.Subject ,
259
+ for identifier : Identifier,
260
+ using observer : @escaping @Sendable (Message) async -> Void
261
+ ) -> ObservationToken where Identifier.MessageType == Message, Message .Subject: Identifiable , Message.Subject.ID == ObjectIdentifier
262
+
263
+ public func addObserver < Identifier : MessageIdentifier , Message : AsyncMessage >(
264
+ of subject : Message .Subject.Type ,
265
+ for identifier : Identifier ,
266
+ using observer : @escaping @Sendable (Message ) async -> Void
267
+ ) -> ObservationToken where Identifier .MessageType == Message
267
268
268
- public func addObserver <M : AsyncMessage >(of subject : M.Subject? = nil ,
269
- for messageType : M.Type ,
270
- using observer : @escaping @Sendable (M) async -> Void )
271
- -> ObservationToken where M.Subject : AnyObject
269
+ public func addObserver <Message : AsyncMessage >(
270
+ of subject : Message.Subject? = nil ,
271
+ for messageType : Message.Type ,
272
+ using observer : @escaping @Sendable (Message) async -> Void
273
+ ) -> ObservationToken where Message.Subject: AnyObject
272
274
273
- public func addObserver <M : AsyncMessage >(of subject : M.Subject ? = nil ,
274
- for messageType : M. Type ,
275
- using observer : @escaping @Sendable (M) async -> Void )
276
- -> ObservationToken where M. Subject : Identifiable,
277
- M .Subject .ID == ObjectIdentifier
275
+ public func addObserver <Message : AsyncMessage >(
276
+ of subject : Message.Subject ? = nil ,
277
+ for messageType : Message. Type ,
278
+ using observer : @escaping @Sendable (Message) async -> Void
279
+ ) -> ObservationToken where Message.Subject : Identifiable , Message .Subject.ID == ObjectIdentifier
278
280
}
279
281
```
280
282
@@ -302,40 +304,31 @@ extension NotificationCenter {
302
304
of subject : Message.Subject,
303
305
for identifier : Identifier,
304
306
bufferSize limit : Int = 10
305
- )
306
- -> some AsyncSequence< Message, Never > where Identifier.MessageType == Message,
307
- Message.Subject : AnyObject
307
+ ) -> some AsyncSequence<Message, Never > where Identifier.MessageType == Message, Message.Subject: AnyObject
308
308
309
309
public func messages <Identifier : MessageIdentifier , Message : AsyncMessage >(
310
310
of subject : Message.Subject,
311
311
for identifier : Identifier,
312
312
bufferSize limit : Int = 10
313
- )
314
- -> some AsyncSequence< Message, Never > where Identifier.MessageType == Message,
315
- Message.Subject : Identifiable,
316
- Message.Subject .ID == ObjectIdentifier {}
313
+ ) -> some AsyncSequence<Message, Never > where Identifier.MessageType == Message, Message.Subject: Identifiable , Message.Subject.ID == ObjectIdentifier {}
317
314
318
315
public func messages <Identifier : MessageIdentifier , Message : AsyncMessage >(
319
316
of subject : Message.Subject.Type ,
320
317
for identifier : Identifier,
321
318
bufferSize limit : Int = 10
322
- )
323
- -> some AsyncSequence< Message, Never > where Identifier.MessageType == Message
319
+ ) -> some AsyncSequence<Message, Never > where Identifier.MessageType == Message
324
320
325
321
public func messages <Message : AsyncMessage >(
326
322
of subject : Message.Subject? = nil ,
327
323
for messageType : Message.Type ,
328
324
bufferSize limit : Int = 10
329
- )
330
- -> some AsyncSequence< Message, Never > where Message.Subject : AnyObject
325
+ ) -> some AsyncSequence<Message, Never > where Message.Subject: AnyObject
331
326
332
327
public func messages <Message : AsyncMessage >(
333
328
of subject : Message.Subject? = nil ,
334
329
for messageType : Message.Type ,
335
330
bufferSize limit : Int = 10
336
- )
337
- -> some AsyncSequence< Message, Never > where Message.Subject : Identifiable,
338
- Message.Subject .ID == ObjectIdentifier
331
+ ) -> some AsyncSequence<Message, Never > where Message.Subject: Identifiable , Message.Subject.ID == ObjectIdentifier
339
332
}
340
333
```
341
334
@@ -366,27 +359,25 @@ extension NotificationCenter {
366
359
// MainActorMessage post()
367
360
368
361
@MainActor
369
- public func post <M : MainActorMessage >(_ message : M , subject : M .Subject)
370
- where M .Subject : AnyObject
362
+ public func post <Message : MainActorMessage >(_ message : Message , subject : Message .Subject)
363
+ where Message .Subject : AnyObject
371
364
372
365
@MainActor
373
- public func post <M : MainActorMessage >(_ message : M, subject : M.Subject)
374
- where M.Subject : Identifiable,
375
- M.Subject .ID == ObjectIdentifier
366
+ public func post <Message : MainActorMessage >(_ message : Message, subject : Message.Subject)
367
+ where Message.Subject : Identifiable, Message.Subject .ID == ObjectIdentifier
376
368
377
369
@MainActor
378
- public func post <M : MainActorMessage >(_ message : M , subject : M .Subject.Type = M .Subject .self )
370
+ public func post <Message : MainActorMessage >(_ message : Message , subject : Message .Subject.Type = Message .Subject .self )
379
371
380
372
// AsyncMessage post()
381
373
382
- public func post <M : AsyncMessage >(_ message : M , subject : M .Subject)
383
- where M .Subject : AnyObject
374
+ public func post <Message : AsyncMessage >(_ message : Message , subject : Message .Subject)
375
+ where Message .Subject : AnyObject
384
376
385
- public func post <M : AsyncMessage >(_ message : M, subject : M.Subject)
386
- where M.Subject : Identifiable,
387
- M.Subject .ID == ObjectIdentifier
377
+ public func post <Message : AsyncMessage >(_ message : Message, subject : Message.Subject)
378
+ where Message.Subject : Identifiable, Message.Subject .ID == ObjectIdentifier
388
379
389
- public func post <M : AsyncMessage >(_ message : M , subject : M .Subject.Type = M .Subject .self )
380
+ public func post <Message : AsyncMessage >(_ message : Message , subject : Message .Subject.Type = Message .Subject .self )
390
381
}
391
382
```
392
383
0 commit comments