352 Commits

Author SHA1 Message Date
Denis Blank
d9622566e9 Address a MSVC compiler bug which prevents collapsing references in coroutines
* Closes #2
3.0.0-alpha-1
2018-03-06 23:14:55 +01:00
Denis Blank
715cece74c Allow non copyable completion handlers in the asio example 2018-03-06 22:06:07 +01:00
Denis Blank
98aefb59d8 First attempt on making all promises non-copyable
* Fix CONTINUABLE_WITH_UNHANDLED_ERRORS when using the promise as
  real callback.
2018-03-06 21:50:25 +01:00
Denis Blank
73c0b17962 Mark promise helpers as noexcept 2018-03-06 21:40:37 +01:00
Denis Blank
12c23f15f8 Fix a defect unit test 2018-03-06 21:36:27 +01:00
Denis Blank
1aae8c3083 Async traversal cleanup 2018-03-06 08:49:00 +01:00
Denis Blank
201a2fc17c Some cleanups in the any composition 2018-03-06 08:44:12 +01:00
Denis Blank
8f69198651 More cleanups in util and traits 2018-03-06 08:37:07 +01:00
Denis Blank
acc15b46ab Traits and util cleanup 2018-03-06 03:53:18 +01:00
Denis Blank
0dbcccdc9e Add documentation to when_any 2018-03-04 08:44:38 +01:00
Denis Blank
9ecbb00f5a Implement the nested when_any connection 2018-03-04 08:14:11 +01:00
Denis Blank
cdbc332287 Implement the new result deduction for when_any
* The logic requires now that all continuables yield the same
  types and amount of result objects.
2018-03-02 19:18:53 +01:00
Denis Blank
9891543b1f Enable and document the new when_all 2018-03-02 04:49:04 +01:00
Denis Blank
dd1b605d95 Revert 5dfe388f7f8156
* It turns out that this isn't needed anymore and just affects
  the compile time by now
* Additionally GCC can't handle this properly
2018-03-02 04:02:45 +01:00
Denis Blank
178f590aa9 Address a GCC parsing failure (compiler bug)
* See https://travis-ci.org/Naios/continuable/jobs/348056527#L723
2018-03-02 03:14:05 +01:00
Denis Blank
83752502dc Fix the simplification 2018-03-02 02:54:09 +01:00
Denis Blank
92ba25cd23 Started on simplifying the all and seq composition heavily 2018-03-02 01:25:59 +01:00
Denis Blank
a9da11149b Attempt to fix the clang build 2018-03-01 05:16:12 +01:00
Denis Blank
7602dfd50d Basic implementation of the all composition 2018-03-01 03:21:31 +01:00
Denis Blank
1853ec8b42 Start to work on rewriting the all composition 2018-02-28 18:12:12 +01:00
Denis Blank
375e376db8 Attempt to fix the clang build 2018-02-28 17:37:02 +01:00
Denis Blank
4a5136427b Avoid using SFINAE inside the materializer 2018-02-28 17:28:41 +01:00
Denis Blank
36257780e0 Some cleanups 2018-02-28 17:15:19 +01:00
Denis Blank
7bf0439493 Materialize continuables when applying strategies 2018-02-28 17:11:58 +01:00
Denis Blank
a1ee771059 Fix an issue when connecting void continuables 2018-02-28 02:43:57 +01:00
Denis Blank
663779f083 Add documentation to when_seq 2018-02-28 02:10:35 +01:00
Denis Blank
3c70024c0b Make it possible to apply when_seq to iterators 2018-02-28 01:21:27 +01:00
Denis Blank
b3bf06c26e Rename some files to match the naming standard 2018-02-28 00:46:40 +01:00
Denis Blank
017d89e34e Partially revert 2cbac4da98e57 2018-02-28 00:41:43 +01:00
Denis Blank
17f454ceb6 Fix a remapping failure when nested tuples are involved 2018-02-28 00:32:40 +01:00
Denis Blank
2cbac4da98 Simplify make_exceptional_continuable 2018-02-28 00:30:58 +01:00
Denis Blank
9c087e60d2 Correctly handle continuables with multiple results 2018-02-28 00:02:52 +01:00
Denis Blank
6e1350086e More work on the hint calculation for all and seq compositions 2018-02-27 23:47:51 +01:00
Denis Blank
c4cdb3c3b0 Fix the mapping when empty spreads are involved 2018-02-27 23:46:03 +01:00
Denis Blank
860ae778bc Fix some remaining issues with calculating the signature hint from all or seq compositions 2018-02-27 17:53:23 +01:00
Denis Blank
6819c68bb2 Some more permissive issues 2018-02-27 17:35:05 +01:00
Denis Blank
707acd0f93 Move the MSVC flags into the appropiate file 2018-02-27 17:34:58 +01:00
Denis Blank
a7d844d0dc Fix some permissive issues 2018-02-27 17:19:57 +01:00
Denis Blank
e3e119b59d Update function2 to Naios/function2@8611ae3 2018-02-27 17:10:38 +01:00
Denis Blank
c734672afa Update GTest to google/googletest@ac34e6c 2018-02-27 17:10:28 +01:00
Christos Stratopoulos
af9e1b0371 Use /permissive- with MSVC
(cherry picked from commit 1e3427659b06f0cf128e480cad7f14b8bcbe25f6)
2018-02-27 17:07:47 +01:00
Denis Blank
3c90862768 Fix sequential compositions 2018-02-27 17:05:11 +01:00
Denis Blank
ba6c4cc905 More work on the sequential compositioning 2018-02-27 06:08:55 +01:00
Denis Blank
fd858a7ed7 First work on implementing deep sequential compositions 2018-02-27 05:07:13 +01:00
Denis Blank
b1d7a76c8f Move the new remapping functionality to its own header 2018-02-27 02:19:08 +01:00
Denis Blank
b3a4a3d359 Lift connection logic up from all and any to a unified function 2018-02-27 02:00:37 +01:00
Denis Blank
fb4a34b328 Split the composition header into one for each strategy 2018-02-26 23:49:59 +01:00
Denis Blank
89c3becbcf Fix some unit tests 2018-02-26 19:34:25 +01:00
Denis Blank
02fbad159c Add missing licenses to cmake files 2018-02-26 19:28:24 +01:00
Denis Blank
2cb42d786d Address a clang build failure 2018-02-26 19:05:16 +01:00