@@ -7,7 +7,7 @@ public struct ForkedArray<Value, Output> {
77 }
88
99 private let filter : ( Value ) async throws -> Bool
10- private let output : ( Value ) async throws -> Output
10+ private let map : ( Value ) async throws -> Output
1111 private let fork : Fork < ForkType , ForkType >
1212
1313 /// The input array used to get the output
@@ -21,11 +21,11 @@ public struct ForkedArray<Value, Output> {
2121 public init (
2222 _ array: [ Value ] ,
2323 filter: @escaping ( Value ) async throws -> Bool = { _ in true } ,
24- output : @escaping ( Value ) async throws -> Output
24+ map : @escaping ( Value ) async throws -> Output
2525 ) {
2626 self . array = array
2727 self . filter = filter
28- self . output = output
28+ self . map = map
2929
3030 switch ForkedArray . split ( array: array) {
3131 case . none:
@@ -49,8 +49,8 @@ public struct ForkedArray<Value, Output> {
4949 public func output( ) async throws -> [ Output ] {
5050 try await fork. merged (
5151 using: { leftForkType, rightForkType in
52- async let leftOutput = try await ForkedArray . output ( for: leftForkType, filter : filter, using : output )
53- async let rightOutput = try await ForkedArray . output ( for: rightForkType, filter : filter, using : output )
52+ async let leftOutput = try await ForkedArray . output ( for: leftForkType, isIncluded : filter, transform : map )
53+ async let rightOutput = try await ForkedArray . output ( for: rightForkType, isIncluded : filter, transform : map )
5454
5555 return try await leftOutput + rightOutput
5656 }
@@ -95,23 +95,23 @@ extension ForkedArray {
9595
9696 private static func output(
9797 for type: ForkType ,
98- filter : @escaping ( Value ) async throws -> Bool ,
99- using : @escaping ( Value ) async throws -> Output
98+ isIncluded : @escaping ( Value ) async throws -> Bool ,
99+ transform : @escaping ( Value ) async throws -> Output
100100 ) async throws -> [ Output ] {
101101 switch type {
102102 case . none:
103103 return [ ]
104104 case let . single( value) :
105- guard try await filter ( value) else { return [ ] }
105+ guard try await isIncluded ( value) else { return [ ] }
106106
107107 try Task . checkCancellation ( )
108108
109- return [ try await using ( value) ]
109+ return [ try await transform ( value) ]
110110 case let . fork( fork) :
111111 return try await fork. merged (
112112 using: { leftType, rightType in
113- async let leftOutput = try output ( for: leftType, filter : filter , using : using )
114- async let rightOutput = try output ( for: rightType, filter : filter , using : using )
113+ async let leftOutput = try output ( for: leftType, isIncluded : isIncluded , transform : transform )
114+ async let rightOutput = try output ( for: rightType, isIncluded : isIncluded , transform : transform )
115115
116116 try Task . checkCancellation ( )
117117
0 commit comments