File tree Expand file tree Collapse file tree 3 files changed +60
-0
lines changed
Sources/AsyncSequenceReader
Tests/AsyncSequenceReaderTests Expand file tree Collapse file tree 3 files changed +60
-0
lines changed Original file line number Diff line number Diff line change 1+ //
2+ // AsyncSequenceReader.swift
3+ // AsyncSequenceReader
4+ //
5+ // Created by Dimitri Bouniol on 2021-11-16.
6+ // Copyright © 2021 Mochi Development, Inc. All rights reserved.
7+ //
18
Original file line number Diff line number Diff line change 1+ //
2+ // AsyncSequenceReaderTests.swift
3+ // AsyncSequenceReader
4+ //
5+ // Created by Dimitri Bouniol on 2021-11-16.
6+ // Copyright © 2021 Mochi Development, Inc. All rights reserved.
7+ //
8+
19import XCTest
210@testable import AsyncSequenceReader
311
Original file line number Diff line number Diff line change 1+ //
2+ // TestSequence.swift
3+ // AsyncSequenceReader
4+ //
5+ // Created by Dimitri Bouniol on 2021-11-16.
6+ // Copyright © 2021 Mochi Development, Inc. All rights reserved.
7+ //
8+
9+ import Foundation
10+
11+ struct TestSequence < Base> : AsyncSequence where Base: Sequence {
12+ typealias Element = Base . Element
13+
14+ var base : Base
15+
16+ struct AsyncIterator : AsyncIteratorProtocol {
17+ var baseIterator : Base . Iterator
18+
19+ mutating func next( ) async -> Base . Iterator . Element ? {
20+ baseIterator. next ( )
21+ }
22+ }
23+
24+ func makeAsyncIterator( ) -> AsyncIterator {
25+ AsyncIterator ( baseIterator: base. makeIterator ( ) )
26+ }
27+ }
28+
29+ struct ThrowingTestSequence < Base> : AsyncSequence where Base: Sequence {
30+ typealias Element = Base . Element
31+
32+ var base : Base
33+
34+ struct AsyncIterator : AsyncIteratorProtocol {
35+ var baseIterator : Base . Iterator
36+
37+ mutating func next( ) async throws -> Base . Iterator . Element ? {
38+ baseIterator. next ( )
39+ }
40+ }
41+
42+ func makeAsyncIterator( ) -> AsyncIterator {
43+ AsyncIterator ( baseIterator: base. makeIterator ( ) )
44+ }
45+ }
You can’t perform that action at this time.
0 commit comments