fpromise

Summary

Enumerations

future_state{
  empty,
  pending,
  ok,
  error
}
enum
result_state{
  pending,
  ok,
  error
}
enum

Typedefs

future using
future_impl< promise< V, E >>
promise using

Functions

bridge(typename Tag::__allow_ctad...) -> bridge< Tag...>
error(E error)
constexpr error_result< E >
error()
constexpr error_result
join_promise_vector(std::vector< fpromise::promise< V, E >> promises)
promise_impl<::fpromise::internal::join_vector_continuation< fpromise::promise< V, E > > >
join_promises(Promises... promises)
promise_impl<::fpromise::internal::join_continuation< Promises...> >
make_error_promise(E error)
promise_impl<::fpromise::internal::result_continuation< void, E > >
make_error_promise()
promise_impl<::fpromise::internal::result_continuation< void, void > >
make_future(Promise promise)
future_impl< Promise >
make_ok_promise(V value)
promise_impl<::fpromise::internal::result_continuation< V, void > >
make_ok_promise()
promise_impl<::fpromise::internal::result_continuation< void, void > >
make_promise(PromiseHandler handler)
promise_impl<::fpromise::internal::context_handler_invoker< PromiseHandler > >
make_promise(PromiseHandler handler)
promise_impl<::fpromise::internal::promise_continuation< PromiseHandler > >
make_promise_with_continuation(Continuation continuation)
promise_impl< Continuation >
make_result_promise(fpromise::result< V, E > result)
promise_impl<::fpromise::internal::result_continuation< V, E > >
make_result_promise(fpromise::ok_result< V > result)
promise_impl<::fpromise::internal::result_continuation< V, E > >
make_result_promise(fpromise::error_result< E > result)
promise_impl<::fpromise::internal::result_continuation< V, E > >
make_result_promise(fpromise::pending_result result)
promise_impl<::fpromise::internal::result_continuation< V, E > >
ok(V value)
constexpr ok_result< V >
ok()
constexpr ok_result
operator!=(const promise_impl< Continuation > & f, decltype(nullptr))
bool
operator!=(decltype(nullptr), const promise_impl< Continuation > & f)
bool
operator!=(const future_impl< Promise > & f, decltype(nullptr))
bool
operator!=(decltype(nullptr), const future_impl< Promise > & f)
bool
operator==(const promise_impl< Continuation > & f, decltype(nullptr))
bool
operator==(decltype(nullptr), const promise_impl< Continuation > & f)
bool
operator==(const future_impl< Promise > & f, decltype(nullptr))
bool
operator==(decltype(nullptr), const future_impl< Promise > & f)
bool
pending()
constexpr pending_result
run_single_threaded(promise_impl< Continuation > promise)
promise_impl< Continuation >::result_type
schedule_for_consumer(fpromise::executor *executor, Promise promise)
consumer< typename Promise::value_type, typename Promise::error_type >
swap(promise_impl< Continuation > & a, promise_impl< Continuation > & b)
void
swap(future_impl< Promise > & a, future_impl< Promise > & b)
void
swap(suspended_task & a, suspended_task & b)
void
swap(result< V, E > & a, result< V, E > & b)
void

Classes

fpromise::barrier
fpromise::bridge
fpromise::completer
fpromise::consumer
fpromise::context
fpromise::executor
fpromise::future_impl
fpromise::pending_task
fpromise::promise_impl
fpromise::result
fpromise::scope
fpromise::sequencer
fpromise::single_threaded_executor
fpromise::suspended_task

Structs

fpromise::error_result
fpromise::error_result< void >
fpromise::ok_result
fpromise::ok_result< void >
fpromise::pending_result

Namespaces

fpromise::subtle

Enumerations

future_state

 future_state

result_state

 result_state
Properties
error
ok
pending

Typedefs

future

future_impl< promise< V, E >> future

promise

promise_impl<::fit::function< result< V, E >(fpromise::context &)>> promise

Functions

bridge

 bridge(
  typename Tag::__allow_ctad...
) -> bridge< Tag...>

error

constexpr error_result< E > error(
  E error
)

error

constexpr error_result error()

join_promise_vector

promise_impl<::fpromise::internal::join_vector_continuation< fpromise::promise< V, E > > > join_promise_vector(
  std::vector< fpromise::promise< V, E >> promises
)

join_promises

promise_impl<::fpromise::internal::join_continuation< Promises...> > join_promises(
  Promises... promises
)

make_error_promise

promise_impl<::fpromise::internal::result_continuation< void, E > > make_error_promise(
  E error
)

make_error_promise

promise_impl<::fpromise::internal::result_continuation< void, void > > make_error_promise()

make_future

future_impl< Promise > make_future(
  Promise promise
)

make_ok_promise

promise_impl<::fpromise::internal::result_continuation< V, void > > make_ok_promise(
  V value
)

make_ok_promise

promise_impl<::fpromise::internal::result_continuation< void, void > > make_ok_promise()

make_promise

promise_impl<::fpromise::internal::context_handler_invoker< PromiseHandler > > make_promise(
  PromiseHandler handler
)

make_promise

promise_impl<::fpromise::internal::promise_continuation< PromiseHandler > > make_promise(
  PromiseHandler handler
)

make_promise_with_continuation

promise_impl< Continuation > make_promise_with_continuation(
  Continuation continuation
)

make_result_promise

promise_impl<::fpromise::internal::result_continuation< V, E > > make_result_promise(
  fpromise::result< V, E > result
)

make_result_promise

promise_impl<::fpromise::internal::result_continuation< V, E > > make_result_promise(
  fpromise::ok_result< V > result
)

make_result_promise

promise_impl<::fpromise::internal::result_continuation< V, E > > make_result_promise(
  fpromise::error_result< E > result
)

make_result_promise

promise_impl<::fpromise::internal::result_continuation< V, E > > make_result_promise(
  fpromise::pending_result result
)

ok

constexpr ok_result< V > ok(
  V value
)

ok

constexpr ok_result ok()

operator!=

bool operator!=(
  const promise_impl< Continuation > & f,
  decltype(nullptr)
)

operator!=

bool operator!=(
  decltype(nullptr),
  const promise_impl< Continuation > & f
)

operator!=

bool operator!=(
  const future_impl< Promise > & f,
  decltype(nullptr)
)

operator!=

bool operator!=(
  decltype(nullptr),
  const future_impl< Promise > & f
)

operator==

bool operator==(
  const promise_impl< Continuation > & f,
  decltype(nullptr)
)

operator==

bool operator==(
  decltype(nullptr),
  const promise_impl< Continuation > & f
)

operator==

bool operator==(
  const future_impl< Promise > & f,
  decltype(nullptr)
)

operator==

bool operator==(
  decltype(nullptr),
  const future_impl< Promise > & f
)

pending

constexpr pending_result pending()

run_single_threaded

promise_impl< Continuation >::result_type run_single_threaded(
  promise_impl< Continuation > promise
)

schedule_for_consumer

consumer< typename Promise::value_type, typename Promise::error_type > schedule_for_consumer(
  fpromise::executor *executor,
  Promise promise
)

swap

void swap(
  promise_impl< Continuation > & a,
  promise_impl< Continuation > & b
)

swap

void swap(
  future_impl< Promise > & a,
  future_impl< Promise > & b
)

swap

void swap(
  suspended_task & a,
  suspended_task & b
)

swap

void swap(
  result< V, E > & a,
  result< V, E > & b
)