Clementine
Public Member Functions | Friends | List of all members
asio::execution::any_executor<> Class Template Reference
Inheritance diagram for asio::execution::any_executor<>:
Inheritance graph
[legend]
Collaboration diagram for asio::execution::any_executor<>:
Collaboration graph
[legend]

Public Member Functions

 any_executor (nullptr_t) ASIO_NOEXCEPT
 
template<typename Executor >
 any_executor (Executor ex, typename enable_if< conditional< !is_same< Executor, any_executor >::value &&!is_base_of< detail::any_executor_base, Executor >::value, is_executor< Executor >, false_type >::type::value >::type *=0)
 
template<typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 >
 any_executor (any_executor< U0, U1, U2, U3, U4, U5, U6, U7 > other)
 
 any_executor (const any_executor &other) ASIO_NOEXCEPT
 
any_executoroperator= (const any_executor &other) ASIO_NOEXCEPT
 
any_executoroperator= (nullptr_t p) ASIO_NOEXCEPT
 
void swap (any_executor &other) ASIO_NOEXCEPT
 
bool equality_helper (const any_executor &other) const ASIO_NOEXCEPT
 
- Public Member Functions inherited from asio::execution::detail::any_executor_base
template<ASIO_EXECUTION_EXECUTOR Executor>
 any_executor_base (Executor ex, false_type)
 
template<ASIO_EXECUTION_EXECUTOR Executor>
 any_executor_base (Executor other, true_type)
 
 any_executor_base (const any_executor_base &other) ASIO_NOEXCEPT
 
any_executor_baseoperator= (const any_executor_base &other) ASIO_NOEXCEPT
 
any_executor_baseoperator= (nullptr_t) ASIO_NOEXCEPT
 
void swap (any_executor_base &other) ASIO_NOEXCEPT
 
template<typename F >
void execute (ASIO_MOVE_ARG(F) f) const
 
template<typename Executor >
Executor * target ()
 
template<typename Executor >
const Executor * target () const
 
const std::type_info & target_type () const
 
 operator unspecified_bool_type () const ASIO_NOEXCEPT
 
bool operator! () const ASIO_NOEXCEPT
 

Friends

template<typename AnyExecutor1 , typename AnyExecutor2 >
enable_if< is_same< AnyExecutor1, any_executor >::value||is_same< AnyExecutor2, any_executor >::value, bool >::type operator== (const AnyExecutor1 &a, const AnyExecutor2 &b) ASIO_NOEXCEPT
 
template<typename AnyExecutor >
enable_if< is_same< AnyExecutor, any_executor >::value, bool >::type operator== (const AnyExecutor &a, nullptr_t) ASIO_NOEXCEPT
 
template<typename AnyExecutor >
enable_if< is_same< AnyExecutor, any_executor >::value, bool >::type operator== (nullptr_t, const AnyExecutor &b) ASIO_NOEXCEPT
 
template<typename AnyExecutor1 , typename AnyExecutor2 >
enable_if< is_same< AnyExecutor1, any_executor >::value||is_same< AnyExecutor2, any_executor >::value, bool >::type operator!= (const AnyExecutor1 &a, const AnyExecutor2 &b) ASIO_NOEXCEPT
 
template<typename AnyExecutor >
enable_if< is_same< AnyExecutor, any_executor >::value, bool >::type operator!= (const AnyExecutor &a, nullptr_t) ASIO_NOEXCEPT
 
template<typename AnyExecutor >
enable_if< is_same< AnyExecutor, any_executor >::value, bool >::type operator!= (nullptr_t, const AnyExecutor &b) ASIO_NOEXCEPT
 

Additional Inherited Members

- Public Types inherited from asio::execution::detail::any_executor_base
typedef void(* unspecified_bool_type) (unspecified_bool_type_t)
 
typedef aligned_storage< sizeof(asio::detail::shared_ptr< void >), alignment_of< asio::detail::shared_ptr< void > >::value >::type object_type
 
- Static Public Member Functions inherited from asio::execution::detail::any_executor_base
static void unspecified_bool_true (unspecified_bool_type_t)
 
- Public Attributes inherited from asio::execution::detail::any_executor_base
object_type object_
 
const object_fnsobject_fns_
 
void * target_
 
const target_fnstarget_fns_
 
- Protected Types inherited from asio::execution::detail::any_executor_base
typedef asio::detail::executor_function function
 
typedef asio::detail::executor_function_view function_view
 
- Protected Member Functions inherited from asio::execution::detail::any_executor_base
bool equality_helper (const any_executor_base &other) const ASIO_NOEXCEPT
 
template<typename Ex >
Ex & object ()
 
template<typename Ex >
const Ex & object () const
 
- Static Protected Member Functions inherited from asio::execution::detail::any_executor_base
static void destroy_void (any_executor_base &)
 
static void copy_void (any_executor_base &ex1, const any_executor_base &)
 
static void move_void (any_executor_base &ex1, any_executor_base &)
 
static const void * target_void (const any_executor_base &)
 
template<typename Obj >
static const object_fnsobject_fns_table (typename enable_if< is_same< Obj, void >::value >::type *=0)
 
static void destroy_shared (any_executor_base &ex)
 
static void copy_shared (any_executor_base &ex1, const any_executor_base &ex2)
 
static void move_shared (any_executor_base &ex1, any_executor_base &ex2)
 
static const void * target_shared (const any_executor_base &ex)
 
template<typename Obj >
static const object_fnsobject_fns_table (typename enable_if< is_same< Obj, asio::detail::shared_ptr< void > >::value >::type *=0)
 
template<typename Obj >
static void destroy_object (any_executor_base &ex)
 
template<typename Obj >
static void copy_object (any_executor_base &ex1, const any_executor_base &ex2)
 
template<typename Obj >
static void move_object (any_executor_base &ex1, any_executor_base &ex2)
 
template<typename Obj >
static const void * target_object (const any_executor_base &ex)
 
template<typename Obj >
static const object_fnsobject_fns_table (typename enable_if< !is_same< Obj, void >::value &&!is_same< Obj, asio::detail::shared_ptr< void > >::value >::type *=0)
 
static const std::type_info & target_type_void ()
 
static bool equal_void (const any_executor_base &, const any_executor_base &)
 
static void execute_void (const any_executor_base &, ASIO_MOVE_ARG(function))
 
static void blocking_execute_void (const any_executor_base &, function_view)
 
template<typename Ex >
static const target_fnstarget_fns_table (typename enable_if< is_same< Ex, void >::value >::type *=0)
 
template<typename Ex >
static const std::type_info & target_type_ex ()
 
template<typename Ex >
static bool equal_ex (const any_executor_base &ex1, const any_executor_base &ex2)
 
template<typename Ex >
static void execute_ex (const any_executor_base &ex, ASIO_MOVE_ARG(function) f)
 
template<typename Ex >
static void blocking_execute_ex (const any_executor_base &ex, function_view f)
 
template<typename Ex >
static const target_fnstarget_fns_table (bool is_always_blocking, typename enable_if< !is_same< Ex, void >::value >::type *=0)
 
static void query_fn_void (void *, const void *, const void *)
 
template<typename Ex , class Prop >
static void query_fn_non_void (void *, const void *ex, const void *prop, typename enable_if< asio::can_query< const Ex &, const Prop &>::value &&is_same< typename Prop::polymorphic_query_result_type, void >::value >::type *)
 
template<typename Ex , class Prop >
static void query_fn_non_void (void *, const void *, const void *, typename enable_if< !asio::can_query< const Ex &, const Prop &>::value &&is_same< typename Prop::polymorphic_query_result_type, void >::value >::type *)
 
template<typename Ex , class Prop >
static void query_fn_non_void (void *result, const void *ex, const void *prop, typename enable_if< asio::can_query< const Ex &, const Prop &>::value &&!is_same< typename Prop::polymorphic_query_result_type, void >::value &&is_reference< typename Prop::polymorphic_query_result_type >::value >::type *)
 
template<typename Ex , class Prop >
static void query_fn_non_void (void *, const void *, const void *, typename enable_if< !asio::can_query< const Ex &, const Prop &>::value &&!is_same< typename Prop::polymorphic_query_result_type, void >::value &&is_reference< typename Prop::polymorphic_query_result_type >::value >::type *)
 
template<typename Ex , class Prop >
static void query_fn_non_void (void *result, const void *ex, const void *prop, typename enable_if< asio::can_query< const Ex &, const Prop &>::value &&!is_same< typename Prop::polymorphic_query_result_type, void >::value &&is_scalar< typename Prop::polymorphic_query_result_type >::value >::type *)
 
template<typename Ex , class Prop >
static void query_fn_non_void (void *result, const void *, const void *, typename enable_if< !asio::can_query< const Ex &, const Prop &>::value &&!is_same< typename Prop::polymorphic_query_result_type, void >::value &&is_scalar< typename Prop::polymorphic_query_result_type >::value >::type *)
 
template<typename Ex , class Prop >
static void query_fn_non_void (void *result, const void *ex, const void *prop, typename enable_if< asio::can_query< const Ex &, const Prop &>::value &&!is_same< typename Prop::polymorphic_query_result_type, void >::value &&!is_reference< typename Prop::polymorphic_query_result_type >::value &&!is_scalar< typename Prop::polymorphic_query_result_type >::value >::type *)
 
template<typename Ex , class Prop >
static void query_fn_non_void (void *result, const void *, const void *,...)
 
template<typename Ex , class Prop >
static void query_fn_impl (void *result, const void *ex, const void *prop, typename enable_if< is_same< Ex, void >::value >::type *)
 
template<typename Ex , class Prop >
static void query_fn_impl (void *result, const void *ex, const void *prop, typename enable_if< !is_same< Ex, void >::value >::type *)
 
template<typename Ex , class Prop >
static void query_fn (void *result, const void *ex, const void *prop)
 
template<typename Poly , typename Ex , class Prop >
static Poly require_fn_impl (const void *, const void *, typename enable_if< is_same< Ex, void >::value >::type *)
 
template<typename Poly , typename Ex , class Prop >
static Poly require_fn_impl (const void *ex, const void *prop, typename enable_if< !is_same< Ex, void >::value &&Prop::is_requirable >::type *)
 
template<typename Poly , typename Ex , class Prop >
static Poly require_fn_impl (const void *, const void *,...)
 
template<typename Poly , typename Ex , class Prop >
static Poly require_fn (const void *ex, const void *prop)
 
template<typename Poly , typename Ex , class Prop >
static Poly prefer_fn_impl (const void *, const void *, typename enable_if< is_same< Ex, void >::value >::type *)
 
template<typename Poly , typename Ex , class Prop >
static Poly prefer_fn_impl (const void *ex, const void *prop, typename enable_if< !is_same< Ex, void >::value &&Prop::is_preferable >::type *)
 
template<typename Poly , typename Ex , class Prop >
static Poly prefer_fn_impl (const void *, const void *,...)
 
template<typename Poly , typename Ex , class Prop >
static Poly prefer_fn (const void *ex, const void *prop)
 

The documentation for this class was generated from the following file: