| 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
 1.8.8