Implement operators
broadwaylamb opened this issue · 5 comments
Mapping Elements
-
map
— #9 -
tryMap
— #15 -
flatMap
— #45 -
mapError
— #23 -
replaceNil
— #24 -
scan
— #49, #83 -
tryScan
— #49, #83 -
setFailureType
— #28
Filtering Elements
-
filter
— #22 -
tryFilter
— #22 -
compactMap
— #32 -
tryCompactMap
— #32 -
removeDuplicates
— #89 -
tryRemoveDuplicates
— #89 -
replaceEmpty
— #122 -
replaceError
— #50
Reducing Elements
-
collect
— #76 -
collect(_:)
— #137 -
collect(_:options:)
-
ignoreOutput
— #44 -
reduce
— #76 -
tryReduce
— #76
Applying Mathematical Operations on Elements
Applying Matching Criteria to Elements
-
contains
— #76 -
contains(where:)
— #76 -
tryContains(where:)
— #76 -
allSatisfy
— #76 -
tryAllSatisfy
— #76
Applying Sequence Operations to Elements
-
drop(untilOutputFrom:)
— #136 -
drop(while:)
-
dropFirst
— #70 -
tryDrop(while:)
-
append
— #90 -
prepend
— #90 -
prefix
— #91 -
prefix(while:)
— #89 -
tryPrefix(while:)
— #89 -
prefix(untilOutputFrom:)
— #206
Selecting Specific Elements
-
first
— #29 -
first(where:)
— #29 -
tryFirst(where:)
— #29 -
last
— #76 -
last(where:)
— #76 -
tryLast(where:)
— #76 -
output(at:)
— #91 -
output(in:)
— #91
Combining Elements from Multiple Publishers
Handling Errors
Adapting Publisher Types
-
switchToLatest
— #142
Controlling Timing
Creating Reference-type Publishers
-
share
— #60
Encoding and Decoding
Identifying Properties with Key Paths
-
map(_ keyPath: KeyPath)
— #71
Working with Multiple Subscribers
-
multicast
-
multicast(subject:)
Connecting Automatically
-
autoconnect
— #60
Buffering Elements:
-
buffer
— #143
Performing Type-Erasure
-
eraseToAnyPublisher
— #59
Specifying Schedulers
Adding Explicit Connectability:
-
makeConnectable
— #61
Connecting Simple Subscribers:
-
assign
-
sink
Debugging
Any ETA on combineLatest
, merge
, zip
and catch
(or v1) as those are super essential for OpenCombine to be usable instead of RxSwift?
@zdnk I’m quite busy with my job right now, so I didn’t have time to finish them. I can’t give you any estimation, but I’ll do my best to complete them before summer. Thank you for you interest.
I would be happy to help to move this forward and hope I can complete some of these operators myself, those few listed are essential to my use as well. #109 with zip
with full test coverage is ready for review, so maybe @broadwaylamb you could do just a review of it in the meantime?
Hi folks, what's the status of the last two operators, combineLatest
and merge
? Our product requires shipping to iOS and macOS that don't support Combine yet, and we're currently using OpenCombine. Is there anything we could do to finish the implementation and have these operators released?
Thank you.
cc: @broadwaylamb
The status is publicly visible in this issue and linked PRs. They are unfinished and all contributions are very welcome as usual.