|
MADNESS
version 0.9
|
Grossly simplified Boost-like type traits and templates. More...
#include <cstddef>#include <stdint.h>#include <madness/madness_config.h>#include <madness/world/type_traits.h>#include <madness/world/enable_if.h>#include <madness/world/function_traits_bits.h>

Go to the source code of this file.
Classes | |
| struct | madness::is_derived_from< A, B > |
| True if A is derived from B and is not B. More... | |
| struct | madness::is_derived_from< A, A > |
| True if A is derived from B and is not B. More... | |
| class | madness::Future< T > |
| A future is a possibly yet unevaluated value. More... | |
| struct | madness::remove_future< T > |
| Boost-type-trait-like mapping of Future<T> to T. More... | |
| struct | madness::remove_fcvr< T > |
| struct | madness::is_serializable< T > |
| This defines stuff that is serialiable by default rules ... basically anything contiguous. More... | |
| class | madness::BindNullaryMemFun< T, resultT > |
| Simple binder for member functions with no arguments. More... | |
| class | madness::BindNullaryMemFun< T, void > |
| Specialization of BindNullaryMemFun for void return. More... | |
| class | madness::BindNullaryConstMemFun< T, resultT > |
| Simple binder for const member functions with no arguments. More... | |
| class | madness::BindNullaryConstMemFun< T, void > |
| Specialization of BindNullaryConstMemFun for void return. More... | |
| struct | madness::Void |
| A type you can return when you want to return void ... use "return None". More... | |
| struct | madness::ReturnWrapper< T > |
| Wrapper so that can return something even if returning void. More... | |
| struct | madness::ReturnWrapper< void > |
| Wrapper so that can return something even if returning void. More... | |
| class | madness::Reference< T > |
| Used to provide rvalue references to support move semantics. More... | |
| struct | madness::has_result_type< T > |
Namespaces | |
| madness | |
| Holds machinery to set up Functions/FuncImpls using various Factories and Interfaces. | |
Macros | |
| #define | REMREF(TYPE) typename std::remove_reference< TYPE >::type |
| Macro to make remove_reference<T> easier to use. More... | |
| #define | REMCONST(TYPE) typename std::remove_const< TYPE >::type |
| Macro to make remove_const<T> easier to use. More... | |
| #define | REMCONSTX(TYPE) std::remove_const< TYPE >::type |
| #define | RETURN_WRAPPERT(TYPE) typename madness::ReturnWrapper< TYPE >::type |
| Returns TYPE unless TYPE is void when returns ReturnWrapper<void> More... | |
| #define | MEMFUN_RETURNT(MEMFUN) typename madness::detail::memfunc_traits< MEMFUN >::result_type |
| Macro to make member function type traits easier to use. More... | |
| #define | MEMFUN_CONSTNESS(MEMFUN) madness::detail::memfunc_traits< MEMFUN >::constness |
| #define | MEMFUN_OBJT(MEMFUN) typename madness::detail::memfunc_traits< MEMFUN >::obj_type |
| Macro to make member function type traits easier to use. More... | |
| #define | MEMFUN_ARITY(MEMFUN) madness::detail::memfunc_traits< MEMFUN >::arity |
| Macro to make member function type traits easier to use. More... | |
| #define | MEMFUN_ARG1T(MEMFUN) typename madness::detail::memfunc_traits< MEMFUN >::arg1_type |
| Macro to make member function type traits easier to use. More... | |
| #define | MEMFUN_ARG2T(MEMFUN) typename madness::detail::memfunc_traits< MEMFUN >::arg2_type |
| Macro to make member function type traits easier to use. More... | |
| #define | MEMFUN_ARG3T(MEMFUN) typename madness::detail::memfunc_traits< MEMFUN >::arg3_type |
| Macro to make member function type traits easier to use. More... | |
| #define | MEMFUN_ARG4T(MEMFUN) typename madness::detail::memfunc_traits< MEMFUN >::arg4_type |
| Macro to make member function type traits easier to use. More... | |
| #define | FUNCTION_RETURNT(FUNCTION) typename madness::detail::function_traits< FUNCTION >::result_type |
| Macro to make function type traits easier to use. More... | |
| #define | FUNCTION_ARITY(FUNCTION) madness::detail::function_traits< FUNCTION >::arity |
| Macro to make function type traits easier to use. More... | |
| #define | FUNCTION_ARG1T(FUNCTION) typename madness::detail::function_traits< FUNCTION >::arg1_type |
| Macro to make function type traits easier to use. More... | |
| #define | FUNCTION_ARG2T(FUNCTION) typename madness::detail::function_traits< FUNCTION >::arg2_type |
| Macro to make function type traits easier to use. More... | |
| #define | FUNCTION_ARG3T(FUNCTION) typename madness::detail::function_traits< FUNCTION >::arg3_type |
| Macro to make function type traits easier to use. More... | |
| #define | FUNCTION_ARG4T(FUNCTION) typename madness::detail::function_traits< FUNCTION >::arg4_type |
| Macro to make function type traits easier to use. More... | |
| #define | RESULT_OF(FUNCTION) typename madness::detail::result_of< FUNCTION >::type |
| #define | IS_SAME(A, B) std::is_same< A, B > |
| Macro to make is_same<T> template easier to use. More... | |
| #define | IS_EQ(A, B) std::is_eq< A, B > |
Functions | |
| template<class T , typename resultT > | |
| BindNullaryMemFun< T, resultT > | madness::bind_nullary_mem_fun (T *t, resultT(T::*op)()) |
| Factory function for BindNullaryMemFun. More... | |
| template<class T , typename resultT > | |
| BindNullaryConstMemFun< T, resultT > | madness::bind_nullary_mem_fun (const T *t, resultT(T::*op)() const) |
| Factory function for BindNullaryConstMemFun. More... | |
Grossly simplified Boost-like type traits and templates.
| #define FUNCTION_ARG1T | ( | FUNCTION | ) | typename madness::detail::function_traits< FUNCTION >::arg1_type |
Macro to make function type traits easier to use.
| #define FUNCTION_ARG2T | ( | FUNCTION | ) | typename madness::detail::function_traits< FUNCTION >::arg2_type |
Macro to make function type traits easier to use.
| #define FUNCTION_ARG3T | ( | FUNCTION | ) | typename madness::detail::function_traits< FUNCTION >::arg3_type |
Macro to make function type traits easier to use.
| #define FUNCTION_ARG4T | ( | FUNCTION | ) | typename madness::detail::function_traits< FUNCTION >::arg4_type |
Macro to make function type traits easier to use.
| #define FUNCTION_ARITY | ( | FUNCTION | ) | madness::detail::function_traits< FUNCTION >::arity |
Macro to make function type traits easier to use.
| #define FUNCTION_RETURNT | ( | FUNCTION | ) | typename madness::detail::function_traits< FUNCTION >::result_type |
Macro to make function type traits easier to use.
| #define IS_SAME | ( | A, | |
| B | |||
| ) | std::is_same< A, B > |
Macro to make is_same<T> template easier to use.
| #define MEMFUN_ARG1T | ( | MEMFUN | ) | typename madness::detail::memfunc_traits< MEMFUN >::arg1_type |
Macro to make member function type traits easier to use.
| #define MEMFUN_ARG2T | ( | MEMFUN | ) | typename madness::detail::memfunc_traits< MEMFUN >::arg2_type |
Macro to make member function type traits easier to use.
| #define MEMFUN_ARG3T | ( | MEMFUN | ) | typename madness::detail::memfunc_traits< MEMFUN >::arg3_type |
Macro to make member function type traits easier to use.
| #define MEMFUN_ARG4T | ( | MEMFUN | ) | typename madness::detail::memfunc_traits< MEMFUN >::arg4_type |
Macro to make member function type traits easier to use.
| #define MEMFUN_ARITY | ( | MEMFUN | ) | madness::detail::memfunc_traits< MEMFUN >::arity |
Macro to make member function type traits easier to use.
| #define MEMFUN_CONSTNESS | ( | MEMFUN | ) | madness::detail::memfunc_traits< MEMFUN >::constness |
| #define MEMFUN_OBJT | ( | MEMFUN | ) | typename madness::detail::memfunc_traits< MEMFUN >::obj_type |
Macro to make member function type traits easier to use.
| #define MEMFUN_RETURNT | ( | MEMFUN | ) | typename madness::detail::memfunc_traits< MEMFUN >::result_type |
Macro to make member function type traits easier to use.
Referenced by madness::WorldContainer< keyT, nodeT >::send(), and madness::WorldContainer< keyT, nodeT >::task().
| #define REMCONST | ( | TYPE | ) | typename std::remove_const< TYPE >::type |
Macro to make remove_const<T> easier to use.
| #define REMCONSTX | ( | TYPE | ) | std::remove_const< TYPE >::type |
| #define REMREF | ( | TYPE | ) | typename std::remove_reference< TYPE >::type |
Macro to make remove_reference<T> easier to use.
| #define RESULT_OF | ( | FUNCTION | ) | typename madness::detail::result_of< FUNCTION >::type |
| #define RETURN_WRAPPERT | ( | TYPE | ) | typename madness::ReturnWrapper< TYPE >::type |
Returns TYPE unless TYPE is void when returns ReturnWrapper<void>
1.8.8