Age | Commit message (Collapse) | Author |
|
The existing `connectable_observable.ref_count()` operator calls
connect on the source when it's subscribed to.
Generalize this by allowing an optional parameter `other`, i.e.
`observable.ref_count(connectable_observable other)` to be used as the
connect target.
Useful for implementing diamond graphs while retaining composability:
```
A
/ \
B C
\ /
D
|
E
auto A = ... | publish();
auto B = A | ...;
auto C = A | ...;
auto D = B | merge(C) | ref_count(A);
auto E = D | ...;
E | subscribe(...);
```
Resolves: https://github.com/ReactiveX/RxCpp/issues/484
Pull request: https://github.com/ReactiveX/RxCpp/pull/485
(Need to merge this into AOSP now because it's blocking an android
change).
(cherry picked from commit 77a5b21ac18d4e42a8402176a9b3baf583b7414e)
Change-Id: I9139dbce2c3b0ba4f4ca59b8300d2b4ceaef4855
|
|
Remove 'RxCpp' library target when it's used outside of
Visual Studio. This was supposed to be a virtual target,
not an actual one that builds libRxCpp.so.
The build never worked because it was missing setting the
compiler/linker flags from shared.cmake
Resolves: #477
|
|
* Minor compilation/test fixes for compiling on android
Change-Id: Id623455d32e9323355744a240c2813d0411d1dac
* Rx: Add support for compiling code without exceptions (-fno-exceptions)
std::exception_ptr usage is replaced with rxcpp::util::error_ptr
which will typedef to std::exception_ptr when exceptions are enabled.
When exceptions are disabled this will typedef to an internal error
type that can retain the "what" error message.
Additionally std::current_exception() and similar usages are replaced
with rxu::current_exception which uses error_ptr instead.
Lastly all try/catch/throw keywords are replaced with either
RXCPP_TRY, RXCPP_CATCH, rxu::throw_exception or similar.
Note that try/catch/throw keywords cause a compilation error with
-fno-exceptions. Trying to access most of the std::*exception* functions
will call std::terminate at runtime.
Tests using exceptions must be disabled by passing --nothrow to the
check2 test runner.
Change-Id: I0b95ae2e323653a17c3b733d165ecf87a014c315
* update to catch2 and add RX_USE_EXCEPTIONS cmake option
* fix bugs in doxygen examples
* replace [[noreturn]] with RXCPP_NORETURN
* removes support for VS 2013
|
|
* #378 adding skip_while operator
* #378 adding tests + fixing CMakeLists.txt
* #378 test completion
* #378 fix includes
* #378 fix assignment in a condition
* #378 fix assignment in a condition 2
|
|
* Add rx-merge-delay-error operator
* fix of msvc2013 compilation
* fix #417 comments
Added RXCPP_NOEXCEPT macro; Added doxygen scenarios for composite_exception and merge_delay_error; Fixed composing exception in merge_delay_error operator; Modified test for merge_delay_operator
* #417 fix composite_exception example
* #417 fix merge_delay_error doxygen example
* fix: samples add among others in project doxygen CMakeLists.txt
* fix: composite_exception.cpp example
|
|
|
|
|
|
|
|
* Implementation of take_while operator and tests
* Refactored tests and changed documentation
* Removed 'noexcept' specifier from helper class in take_while test
* Removed 'const' specifier from not_equal_to helper class in take_while test in order to get rid of MSVC assignment operator warning.
* decouple take_while from observable
* Added take_while snippet.
* Fixed CMakeLists closing parenthesis.
|
|
* add support for C++ coroutines
* add tests and docs
* address feedback and fix lifetime issue
|
|
|
|
use
```
cmake -DCMAKE_INSTALL_PREFIX=<path> .
make install
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
copied from combine_latest
|
|
|
|
|
|
|
|
|
|
remove biicode references
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Distinct done and merged! thanks to @gchudnov!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
add run loop scheduler
|
|
|
|
|
|
|
|
|
|
This commit leads to crazy build problems
|
|
+add docs for them
|
|
Modified CmakeLists.txt such that the Visual Studio solution now has an
extra project "RxCpp" containing a virtual folder "src"
|
|
|
|
|
|
NOTE: binaries have moved!
OSX
<build>/test/rxcppv2_test
<build>/examples/pythagorian/pythagorian
Windows
<build>\test\Debug\rxcppv2_test.exe
<build>\examples\pythagorian\Debug\pythagorian.exe
NOTE: cmake can be run in the root! This will make a dir named build
with the binaries
cmake .
cmake --build .
|