128 Commits

Author SHA1 Message Date
Denis Blank
c2ad28d702 More is aligned tests 2018-01-29 07:00:17 +01:00
Denis Blank
701a8ea1a4 Attemt to fix the alignment errors 2018-01-29 01:03:44 +01:00
Denis Blank
9c4b0a3a17 Fix the memory leak tested in 5751152733 2018-01-29 00:33:53 +01:00
Denis Blank
f976591e94 Remove an unused header 2018-01-28 22:40:07 +01:00
Denis Blank
6c209c876a Allows fail to accept plain continuables 2018-01-25 08:11:05 +01:00
Denis Blank
6e404b6eaa Apply outer and inner size improvements for the callable wrapper
* This will decrease the needed allocations heavily,
  since we don't have to allocate twice if a continuation is type erased
  since the outer type erasure may contain the inner one with zero costs.
2018-01-25 05:00:19 +01:00
Denis Blank
9286cfa8cc Feature detection placeholders 2018-01-24 23:05:23 +01:00
Denis Blank
b17d2f9c17 Fix a GCC warning:
```cpp
  ../include/continuable/detail/expected.hpp:344:44: error: declaration of ‘using expected = class cti::detail::util::expected<cti::detail::util::detail::void_guard_tag>’ [-fpermissive]
     using expected = expected<void_guard_tag>;
                                              ^
  ../include/continuable/detail/expected.hpp:171:7: error: changes meaning of ‘expected’ from ‘class cti::detail::util::expected<cti::detail::util::detail::void_guard_tag>’ [-fpermissive]
   class expected
  ```
2018-01-24 01:44:30 +01:00
Denis Blank
810d778b2e Attemtp to fix coroutines on clang 2018-01-24 01:13:03 +01:00
Denis Blank
9b0ad832ff Add a missing include 2018-01-24 01:06:19 +01:00
Denis Blank
efbce1f886 Mark continuation invocations as non exceptional 2018-01-23 19:40:55 +01:00
Denis Blank
ea6b76a044 Some namespace corrections 2018-01-15 05:55:32 +01:00
Denis Blank
cb225835d6 Preparation for making expected available inside the base namespace 2018-01-14 04:26:32 +01:00
Denis Blank
55a59fb7f7 Attempt to fix a gcc warning 2018-01-14 00:18:20 +01:00
Denis Blank
3626133f8e Happy new Year!
* Update license notices to 2018
2018-01-04 01:45:09 +01:00
Denis Blank
140627cfd2 Fix clang and GCC build errors 2017-12-30 03:37:56 +01:00
Denis Blank
a85040b0c2 Basic skeleton for coroutine_traits 2017-12-28 05:26:29 +01:00
Denis Blank
5d95b5c3e3 Test that coroutines propagate thrown exceptions back to co_await 2017-12-28 04:16:13 +01:00
Denis Blank
6908f22996 Fix an issue with the feature inclusion order 2017-12-27 06:13:38 +01:00
Denis Blank
434db0fc24 First working version of co_await using continuables! 2017-12-26 03:33:44 +01:00
Denis Blank
baf47b129c Fix the remaining copy bug in expected 2017-12-26 03:02:26 +01:00
Denis Blank
71001cecc3 more 2017-12-21 05:04:57 +01:00
Denis Blank
53c878c9c5 build fix 2017-12-10 03:51:08 +01:00
Denis Blank
dbf73b6ac6 more 2017-12-08 21:59:59 +01:00
Denis Blank
73a8da1b86 Support value and error assignments in expected 2017-12-01 19:03:13 +01:00
Denis Blank
95d5f25f84 Rename flow -> next 2017-11-30 07:32:17 +01:00
Denis Blank
b4332b66c5 Make use of expected in await 2017-11-30 07:11:23 +01:00
Denis Blank
3d6bb4d8a7 Add tests for move assignment 2017-11-30 04:20:53 +01:00
Denis Blank
7fda8b9f65 Fix some build errors in expected and add typed tests 2017-11-30 04:17:13 +01:00
Denis Blank
bf89a98d60 Fix the build 2017-11-30 02:16:49 +01:00
Denis Blank
8b99c72071 more 2017-11-30 00:59:52 +01:00
Denis Blank
b18f78c6be More 2017-11-22 23:38:33 +01:00
Denis Blank
0f5dd265fd more 2017-11-22 02:11:27 +01:00
Denis Blank
91b75953a6 more 2017-11-16 04:46:08 +01:00
Denis Blank
b3d350cb11 more 2017-11-14 03:13:54 +01:00
Denis Blank
a6b6148f44 More work on await 2017-11-13 18:23:04 +01:00
Denis Blank
6001e99723 Make continuables usable in await expressions 2017-11-13 15:03:52 +01:00
Denis Blank
d8591d1f13 More work on using operator await 2017-11-13 13:32:34 +01:00
Denis Blank
26ff6312ed Initial work on corooutine/await support 2017-11-06 19:21:34 +01:00
Denis Blank
20c54f54cb Move transforms in their own toplevel namespace 2017-10-11 17:04:01 +02:00
Denis Blank
f3c33b58c6 Improve the documentation 2017-10-04 19:07:20 +02:00
Denis Blank
2b061a6058 Move the documentation code to doc 2017-10-04 18:52:38 +02:00
Denis Blank
84ca172caa Qualify continuable callbacks as r-value callable 2017-10-04 17:16:58 +02:00
Denis Blank
5c3ae8223a Materialize the continuable before applying transforms 2017-10-04 16:56:56 +02:00
Denis Blank
92d247f2d6 Fix a build error with the fold emulation 2017-10-04 16:56:38 +02:00
Denis Blank
75b5ecad9d more mocks 2017-10-04 04:52:30 +02:00
Denis Blank
b67ca1c224 Allow basic emulation of C++17 fold expressions 2017-10-04 04:32:49 +02:00
Denis Blank
04539ba638 Implement flatten as transform 2017-10-04 04:11:37 +02:00
Denis Blank
0eb272a46f Move generic transforms out of the main class
* Introduce apply to use generic transforms which are
  defined out of class.
2017-10-04 04:05:11 +02:00
Denis Blank
612aeef0c8 Add an operator| (pipe) for future folding and channels 2017-10-04 03:17:26 +02:00