Sergej Jaskiewicz
b6aea2957a
Use proper xcconfigs to fix CI
2019-11-29 22:06:34 +03:00
Sergej Jaskiewicz
9219c8841c
Allow enumerating fields of value types
2019-11-29 21:08:51 +03:00
Sergej Jaskiewicz
5a41e2976c
Useheaders from Swift repo for runtime introspection
2019-11-29 19:05:13 +03:00
Sergej Jaskiewicz
e48d5d4492
Move headers into folders
2019-11-29 15:58:42 +03:00
Sergej Jaskiewicz
9b81672df8
Add dedicated tests for enumerateFields
2019-11-29 15:41:58 +03:00
Sergej Jaskiewicz
d5944290e6
Make ObservableObject.objectWillChange available in Swift 5.0
2019-11-26 17:56:01 +03:00
Sergej Jaskiewicz
a3e361a29a
Add TrailingObjects.h
...
[skip ci]
2019-11-26 17:51:08 +03:00
Sergej Jaskiewicz
1e6a7cd3b6
[WIP] Support generic ObservableObjects
2019-11-26 17:49:17 +03:00
Sergej Jaskiewicz
acb1b5996a
[ObservableObject] Add a test for NSObject subclass
2019-11-26 17:49:17 +03:00
Sergej Jaskiewicz
77e7ff75fb
Compute OPENCOMBINE_SWIFT_CLASS_IS_SWIFT_MASK at runtime
...
based on the OS version.
2019-11-26 17:49:17 +03:00
Sergej Jaskiewicz
26d6dc9971
[COpenCombineHelpers] Support C++ 14
...
The CI complains about missing headers, so let's reimplement std::string_view ourselves.
2019-11-26 17:49:17 +03:00
Sergej Jaskiewicz
280ea0ac9a
Fix ObservableObject behavior for subclasses of resilient classes
2019-11-26 17:49:17 +03:00
Sergej Jaskiewicz
8798739caa
[WIP] [ObservableObject] Make some tests pass
2019-11-26 17:49:07 +03:00
Sergej Jaskiewicz
c6c79144c5
Implement ObservableObject protocol
2019-11-26 17:48:50 +03:00
Sergej Jaskiewicz
7c5a76cf2b
Fix @Published ( #112 )
2019-11-26 17:46:01 +03:00
Max Desiatov
981ab4fa09
Add Future publisher with tests ( #107 )
2019-11-26 02:15:43 +03:00
Sergej Jaskiewicz
8cf71e0122
If Multicast receives subscription twice, cancel the second one ( #110 )
2019-11-25 16:52:55 +03:00
Max Desiatov
130125cb66
Use demand.assertNonZero() in PassthroughSubject ( #108 )
2019-11-24 21:44:14 +03:00
Max Desiatov
56202b1663
Fix typo in FilterProducer.swift
...
> subsription
2019-11-22 20:12:34 +03:00
Sergej Jaskiewicz
d0a02de7c5
Warn about unguarded availability in C++ code. Fix the warnings.
2019-11-21 20:18:28 +03:00
Sergej Jaskiewicz
b6c7560f4c
Use pthread_mutex_t instead of std::mutex on non-Darwin platforms
...
std::mutex doesn't guarantee error checks.
With pthread, we can enable them manually.
Error checks are essential, since the client code may bay be crafted
in such a way that causes a non-recursive lock to be recursively
acuired, which is undefined behavior with std::mutex.
2019-11-19 18:38:01 +03:00
Sergej Jaskiewicz
26f9acd75a
Reimplement FlatMap to make all the tests pass
2019-11-19 18:38:01 +03:00
Sergej Jaskiewicz
8afe945325
Test that CombineIdentifier uses UInt64 under the hood
2019-11-19 18:38:01 +03:00
Sergej Jaskiewicz
e402fb3980
Remove redundant Self
2019-11-19 18:38:01 +03:00
Sergej Jaskiewicz
4f96378c02
Remove OperatorSubscription class
2019-11-19 18:38:01 +03:00
Sergej Jaskiewicz
243f3d200e
Implement PrefixWhile, TryPrefixWhile using FilterProducer
2019-11-19 18:38:01 +03:00
Sergej Jaskiewicz
f1fb5552b5
Implement RemoveDuplicates, TryRemoveDuplicates using FilterProducer
2019-11-19 18:38:01 +03:00
Sergej Jaskiewicz
bfd875ccba
Simplify CompactMap and TryCompactMap using FilterProducer
2019-11-19 18:38:01 +03:00
Sergej Jaskiewicz
27da28f378
Simplify Filter and TryFilter using FilterProducer
2019-11-19 18:38:01 +03:00
Sergej Jaskiewicz
cba3a69e74
Implement FilterProducer
2019-11-19 18:38:01 +03:00
Sergej Jaskiewicz
b5e31a43ef
Fix ReplaceError subscription behavior
2019-11-19 18:38:01 +03:00
Sergej Jaskiewicz
d4bdd83a00
Implement the Record publisher
2019-11-12 17:31:29 +03:00
Sergej Jaskiewicz
f1cc94adff
Implement Publishers.Output
2019-11-11 20:26:31 +03:00
Sergej Jaskiewicz
5b7358111c
Remove redundant
2019-11-10 15:00:50 +03:00
Sergej Jaskiewicz
25ac4dfa5f
Fix SwiftLint crash
...
https://github.com/realm/SwiftLint/issues/2793
2019-11-09 15:26:50 +03:00
Sergej Jaskiewicz
36a9f1999c
They fix bugs in Combine, we update our awesome test suite!
...
The bug fixes happened in macOS 10.15.1
2019-10-31 14:01:44 +03:00
Sergej Jaskiewicz
f069f9b9fa
Audit DropWhile/TryDropWhile for thread safety ( #87 )
...
Add more tests, make them pass
2019-10-25 15:45:40 +03:00
Sergej Jaskiewicz
55bdbba0f9
Publishers.Print: cancel new subscription if Inner is already subscribed ( #92 )
2019-10-24 15:11:55 +03:00
Sergej Jaskiewicz
1290545c49
Audit IgnoreOutput for thread safety, add more tests, make them pass ( #88 )
2019-10-23 23:44:59 +03:00
Sergej Jaskiewicz
aed074af43
Add tests for Subscriptions.empty
2019-10-23 20:30:46 +03:00
Sergej Jaskiewicz
11ec7c89e6
Gybify Encode/Decode, add more tests, make them pass
2019-10-23 20:30:46 +03:00
Sergej Jaskiewicz
46007658a1
Add missing Equatable comformances
...
- Collect
- Contains
- Count
- Drop
- Last
2019-10-17 14:40:56 +03:00
Sergej Jaskiewicz
c4c7f2172d
Add more tests for Scan, TryScan
2019-10-17 14:40:56 +03:00
Eric Patey
5b0a21a0b9
Implement Publishers.Scan
2019-10-17 14:40:56 +03:00
Sergej Jaskiewicz
f4e191b2ff
Add more tests for Publishers.Drop ( #82 )
2019-10-17 09:41:53 +03:00
Sven
c275e51cdc
Implement Publishers.Drop ( #70 )
2019-10-16 13:26:10 +03:00
Sergej Jaskiewicz
ef3ebd965a
Extract locking API into COpenCombineHelpers module
2019-10-16 02:10:47 +03:00
Sergej Jaskiewicz
a08b99c886
Fix a compiler crash on Linux
...
This crash could only be reproduced in release configuration
2019-10-15 20:51:44 +03:00
Sergej Jaskiewicz
3398499540
Remove Unreachable.swift
2019-10-15 20:51:44 +03:00
Sergej Jaskiewicz
3a88dfd76b
Implemented Comparison. Use ReduceProducer.
2019-10-15 20:51:44 +03:00