Skip to content

Commit

Permalink
Fix async stream type erasure warning
Browse files Browse the repository at this point in the history
  • Loading branch information
romanmazeev committed Mar 1, 2025
1 parent bc5b6e2 commit bc25070
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions Sources/MRZScanner/Public/Scanner.swift
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@ public struct ScanningConfiguration: Sendable {
// MARK: - Image stream scanning

public extension AsyncStream<CIImage> {
func scanForMRZCode(configuration: ScanningConfiguration) -> AsyncThrowingStream<ScanningResult<TrackerResult>, Error> {
// TODO: Replace return type with `any AsyncSequence` once macOS 15.0 & iOS 18.0 become the minimum deployment target.
func scanForMRZCode(configuration: ScanningConfiguration) -> AsyncThrowingMapSequence<AsyncStream<CIImage>, ScanningResult<TrackerResult>> {
@Dependency(\.tracker.create) var createTracker
let tracker = createTracker()

Expand All @@ -43,12 +44,12 @@ public extension AsyncStream<CIImage> {

@Dependency(\.parser) var parser
guard let parsedResult = parser.parse(mrzLines: validatedResults.map(\.result)) else {
return await .init(results: tracker.seenResults, boundingRects: boundingRects)
return await ScanningResult<TrackerResult>(results: tracker.seenResults, boundingRects: boundingRects)
}

tracker.track(result: parsedResult)
return await .init(results: tracker.seenResults, boundingRects: boundingRects)
}.eraseToThrowingStream()
}
}
}

Expand Down

0 comments on commit bc25070

Please sign in to comment.