hpx/type_support/meta.hpp¶
See Public API for a list of names and headers that are part of the public HPX API.
-
namespace
hpx
-
namespace
meta
¶ Typedefs
-
template<typename
F
, typenameT1
, typenameT2
, typenameT3
>
usinginvoke3
= typename F::template apply<T1, T2, T3>¶
-
template<template<class...> typename
T
, typename ...Ts
>
usingis_valid
= util::is_detected<T, Ts...>¶
-
template<template<class> typename
T
, typenameT1
>
usingis_valid1
= util::is_detected<T, T1>¶
-
template<template<class, class> typename
T
, typenameT1
, typenameT2
>
usingis_valid2
= util::is_detected<T, T1, T2>¶
-
template<template<class, class, class> typename
T
, typenameT1
, typenameT2
, typenameT3
>
usingis_valid3
= util::is_detected<T, T1, T2, T3>¶
-
template<typename
F
, typenameT1
, typenameT2
>
usingis_invocable2
= is_valid2<F::template apply, T1, T2>¶
-
template<typename
F
, typenameT1
, typenameT2
, typenameT3
>
usingis_invocable3
= is_valid3<F::template apply, T1, T2, T3>¶
-
template<typename
F
, typename ...Front
>
usingbind_front
= bind_front_func<F::template apply, Front...>¶
-
template<typename
F
, typename ...Back
>
usingbind_front1
= bind_front1_func<F::template apply, Back...>¶
-
template<typename
F
, typename ...Back
>
usingbind_front2
= bind_front2_func<F::template apply, Back...>¶
-
template<typename
F
, typename ...Back
>
usingbind_front3
= bind_front3_func<F::template apply, Back...>¶
-
template<typename
F
, typename ...Back
>
usingbind_back
= bind_back_func<F::template apply, Back...>¶
-
template<typename
F
, typename ...Back
>
usingbind_back1
= bind_back1_func<F::template apply, Back...>¶
-
template<typename
F
, typename ...Back
>
usingbind_back2
= bind_back2_func<F::template apply, Back...>¶
-
template<typename
F
, typename ...Back
>
usingbind_back3
= bind_back3_func<F::template apply, Back...>¶
-
template<typename
Cond
, typenameTrueCase
, typenameFalseCase
>
usingif_
= invoke2<detail::if_<value<Cond>>, TrueCase, FalseCase>¶
-
template<typename
F
= func<pack>>
usinguncurry
= compose_args<F>¶
-
template<template<class...> typename
F
, typename ...Back
>
structbind_back1_func
¶ Public Types
-
template<typename
A
>
usingapply
= F<A, Back...>¶
-
template<typename
-
template<template<class...> typename
F
, typename ...Back
>
structbind_back2_func
¶ Public Types
-
template<typename
A
, typenameB
>
usingapply
= F<A, B, Back...>¶
-
template<typename
-
template<template<class...> typename
F
, typename ...Back
>
structbind_back3_func
¶ Public Types
-
template<typename
A
, typenameB
, typenameC
>
usingapply
= F<A, B, C, Back...>¶
-
template<typename
-
template<template<class...> typename
F
, typename ...Back
>
structbind_back_func
¶ Public Types
-
template<typename ...
Ts
>
usingapply
= F<Ts..., Back...>¶
-
template<typename ...
-
template<template<class...> typename
F
, typename ...Front
>
structbind_front1_func
¶ Public Types
-
template<typename
A
>
usingapply
= F<Front..., A>¶
-
template<typename
-
template<template<class...> typename
F
, typename ...Front
>
structbind_front2_func
¶ Public Types
-
template<typename
A
, typenameB
>
usingapply
= F<Front..., A, B>¶
-
template<typename
-
template<template<class...> typename
F
, typename ...Front
>
structbind_front3_func
¶ Public Types
-
template<typename
A
, typenameB
, typenameC
>
usingapply
= F<Front..., A, B, C>¶
-
template<typename
-
template<template<class...> typename
F
, typename ...Front
>
structbind_front_func
¶ Public Types
-
template<typename ...
Ts
>
usingapply
= F<Front..., Ts...>¶
-
template<typename ...
-
template<typename
R
>
structcompose_func
¶ Public Types
-
template<typename ...
Ts
>
usingapply
= R(Ts...)¶
-
template<typename ...
-
struct
count
¶
-
template<typename
F
>
structcurry
¶
-
template<template<class...> typename
F
>
structdefer
¶
-
template<template<class...> typename
F
>
structfunc
¶ Public Types
-
template<typename ...
Ts
>
usingapply
= F<Ts...>¶
-
template<typename ...
-
template<template<class> typename
F
>
structfunc1
¶ Public Types
-
template<typename
T1
>
usingapply
= F<T1>¶
-
template<typename
-
template<template<class, class> typename
F
>
structfunc2
¶ Public Types
-
template<typename
T1
, typenameT2
>
usingapply
= F<T1, T2>¶
-
template<typename
-
template<template<class, class, class> typename
F
>
structfunc3
¶ Public Types
-
template<typename
T1
, typenameT2
, typenameT3
>
usingapply
= F<T1, T2, T3>¶
-
template<typename
-
template<typename
Old
, typenameContinuation
= func<pack>>
structremove
¶ Public Types
-
template<typename ...
Ts
>
usingapply
= invoke<compose_args<Continuation>, if_<std::is_same<Ts, Old>, pack<>, pack<Ts>>...>¶
-
template<typename ...
-
template<typename
Init
, typenameF
>
structright_fold
¶
-
template<typename
Continuation
= func<pack>>
structunique
¶ Public Types
-
template<typename ...
Ts
>
usingapply
= meta::apply<Continuation, invoke<right_fold<pack<>, push_back_unique<>>, Ts...>>¶
-
template<typename ...
-
template<typename
-
namespace