@@ -33,6 +33,7 @@ public typealias FlagChangeStream = AsyncStream<FlagChange>
3333public struct FilteredFlagChangeStream : AsyncSequence , Sendable {
3434
3535 public typealias Element = FlagChange
36+ public typealias Failure = Never
3637
3738 let sequence : AsyncFilterSequence < FlagChangeStream >
3839
@@ -49,8 +50,25 @@ public struct FilteredFlagChangeStream: AsyncSequence, Sendable {
4950 }
5051 }
5152
52- public func makeAsyncIterator( ) -> AsyncFilterSequence < FlagChangeStream > . AsyncIterator {
53- sequence. makeAsyncIterator ( )
53+ public struct AsyncIterator : AsyncIteratorProtocol {
54+ var iterator : AsyncFilterSequence < FlagChangeStream > . AsyncIterator
55+
56+ public mutating func next( ) async -> Element ? {
57+ await iterator. next ( )
58+ }
59+
60+ #if swift(>=6)
61+ @available ( macOS 15 . 0 , iOS 18 . 0 , watchOS 11 . 0 , tvOS 18 . 0 , visionOS 2 . 0 , * )
62+ public mutating func next(
63+ isolation actor : isolated ( any Actor ) ?
64+ ) async -> FlagChange ? {
65+ await iterator. next ( isolation: actor )
66+ }
67+ #endif
68+ }
69+
70+ public func makeAsyncIterator( ) -> AsyncIterator {
71+ AsyncIterator ( iterator: sequence. makeAsyncIterator ( ) )
5472 }
5573
5674}
@@ -62,6 +80,7 @@ public struct FilteredFlagChangeStream: AsyncSequence, Sendable {
6280public struct EmptyFlagChangeStream : AsyncSequence , Sendable {
6381
6482 public typealias Element = FlagChange
83+ public typealias Failure = Never
6584
6685 public init ( ) {
6786 // Intentionally left blank
@@ -75,10 +94,18 @@ public struct EmptyFlagChangeStream: AsyncSequence, Sendable {
7594
7695 public typealias Element = FlagChange
7796
78- public func next( ) async throws -> FlagChange ? {
97+ public func next( ) async -> FlagChange ? {
7998 nil
8099 }
81100
101+ #if swift(>=6)
102+ @available ( macOS 15 . 0 , iOS 18 . 0 , watchOS 11 . 0 , tvOS 18 . 0 , visionOS 2 . 0 , * )
103+ public func next(
104+ isolation actor : isolated ( any Actor ) ?
105+ ) async -> FlagChange ? {
106+ nil
107+ }
108+ #endif
82109 }
83110
84111}
0 commit comments