Denis Blank 0657445466 Re-enable the deprecation warnings
* Ref 815c3d71
2018-11-22 00:50:41 +01:00
.github
cmake Improve 4ae560156348 and allow it to be set as an option 2018-11-19 19:53:02 +01:00
dep
doc
examples Introduce the continuable primitive header which supplies tags 2018-11-19 23:59:01 +01:00
include/continuable Re-enable the deprecation warnings 2018-11-22 00:50:41 +01:00
test Introduce the continuable primitive header which supplies tags 2018-11-19 23:59:01 +01:00
tools Reformat the travis-ci shell script 2018-11-19 19:26:51 +01:00
.clang-format
.clang-tidy
.editorconfig
.gitattributes
.gitignore
.gitmodules
.travis.yml
appveyor.yml
CMakeLists.txt Improve 4ae560156348 and allow it to be set as an option 2018-11-19 19:53:02 +01:00
LICENSE.txt
Readme.md

Continuable

Current version Travic-CI build status AppVeyor CI status MIT Licensed Documentation Try continuable online Compiler explorer


Continuable is a C++14 library that provides full support for:

  • lazy async continuation chaining based on callbacks (then) and expression templates, callbacks are wrapped nicely as promises.
  • no enforced type-erasure which means we need less heap allocations than comparable libraries, strictly following the "don't pay for what you don't use" principle.
  • support for all, any and sequential connections between continuables through expressive operator overloads &&, || and >> as well as free functions when_all, when_any and when_seq.
  • asynchronous error handling through exceptions, error codes and user defined types.
  • syntactic sugar for instance: partial invocation, tuple unpacking, co_await support and executors.
  • encapsuled from any runtime, larger framework or executors makes it possible to use continuable even in smaller or esoteric usage scenarios.

Getting started:

The documentation offers everything you need:

Issues and contributions

Issue reports are accepted through the Github issue tracker as well as Pull requests. Every contribution is welcome! Don't hesitate to ask for help if you need any support in improving the implementation or if you have any troubles in using the library.