Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
function_template.hpp File Reference
#include <boost/function/detail/prologue.hpp>
#include <boost/detail/no_exceptions_support.hpp>
Include dependency graph for function_template.hpp:

Classes

struct  boost::sig< Args >
 

Namespaces

 boost
 Duration formatting facet for input.
 
 boost::detail
 
 boost::detail::function
 

Macros

#define BOOST_FUNCTION_TEMPLATE_PARMS   BOOST_PP_ENUM_PARAMS(BOOST_FUNCTION_NUM_ARGS, typename T)
 
#define BOOST_FUNCTION_TEMPLATE_ARGS   BOOST_PP_ENUM_PARAMS(BOOST_FUNCTION_NUM_ARGS, T)
 
#define BOOST_FUNCTION_PARM(J, I, D)   BOOST_PP_CAT(T,I) BOOST_PP_CAT(a,I)
 
#define BOOST_FUNCTION_PARMS   BOOST_PP_ENUM(BOOST_FUNCTION_NUM_ARGS,BOOST_FUNCTION_PARM,BOOST_PP_EMPTY)
 
#define BOOST_FUNCTION_ARGS   BOOST_PP_ENUM_PARAMS(BOOST_FUNCTION_NUM_ARGS, a)
 
#define BOOST_FUNCTION_ARG_TYPE(J, I, D)   typedef BOOST_PP_CAT(T,I) BOOST_PP_CAT(BOOST_PP_CAT(arg, BOOST_PP_INC(I)),_type);
 
#define BOOST_FUNCTION_ARG_TYPES   BOOST_PP_REPEAT(BOOST_FUNCTION_NUM_ARGS,BOOST_FUNCTION_ARG_TYPE,BOOST_PP_EMPTY)
 
#define BOOST_FUNCTION_COMMA
 
#define BOOST_FUNCTION_FUNCTION   BOOST_JOIN(function,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_FUNCTION_INVOKER   BOOST_JOIN(function_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_VOID_FUNCTION_INVOKER   BOOST_JOIN(void_function_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_FUNCTION_OBJ_INVOKER   BOOST_JOIN(function_obj_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_VOID_FUNCTION_OBJ_INVOKER   BOOST_JOIN(void_function_obj_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_FUNCTION_REF_INVOKER   BOOST_JOIN(function_ref_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_VOID_FUNCTION_REF_INVOKER   BOOST_JOIN(void_function_ref_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_MEMBER_INVOKER   BOOST_JOIN(function_mem_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_VOID_MEMBER_INVOKER   BOOST_JOIN(function_void_mem_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_GET_FUNCTION_INVOKER   BOOST_JOIN(get_function_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_GET_FUNCTION_OBJ_INVOKER   BOOST_JOIN(get_function_obj_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_GET_FUNCTION_REF_INVOKER   BOOST_JOIN(get_function_ref_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_GET_MEMBER_INVOKER   BOOST_JOIN(get_member_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_GET_INVOKER   BOOST_JOIN(get_invoker,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_VTABLE   BOOST_JOIN(basic_vtable,BOOST_FUNCTION_NUM_ARGS)
 
#define BOOST_FUNCTION_VOID_RETURN_TYPE   void
 
#define BOOST_FUNCTION_RETURN(X)   X
 
#define BOOST_FUNCTION_PARTIAL_SPEC   R (void)
 

Typedefs

typedef T boost::vtable_type
 
typedef void(dummy::* boost::safe_bool )()
 

Functions

template<typename FunctionPtr , typename R BOOST_PP_ENUM_PARAMS>
struct boost::detail::function::BOOST_JOIN (function_invoker, BOOST_FUNCTION_NUM_ARGS)
 
template<typename FunctionPtr , typename R BOOST_PP_ENUM_PARAMS>
struct boost::detail::function::BOOST_JOIN (void_function_invoker, BOOST_FUNCTION_NUM_ARGS)
 
template<typename FunctionObj , typename R BOOST_PP_ENUM_PARAMS>
struct boost::detail::function::BOOST_JOIN (function_obj_invoker, BOOST_FUNCTION_NUM_ARGS)
 
template<typename FunctionObj , typename R BOOST_PP_ENUM_PARAMS>
struct boost::detail::function::BOOST_JOIN (void_function_obj_invoker, BOOST_FUNCTION_NUM_ARGS)
 
template<typename FunctionObj , typename R BOOST_PP_ENUM_PARAMS>
struct boost::detail::function::BOOST_JOIN (function_ref_invoker, BOOST_FUNCTION_NUM_ARGS)
 
template<typename FunctionObj , typename R BOOST_PP_ENUM_PARAMS>
struct boost::detail::function::BOOST_JOIN (void_function_ref_invoker, BOOST_FUNCTION_NUM_ARGS)
 
template<typename FunctionPtr , typename R BOOST_PP_ENUM_PARAMS>
struct boost::detail::function::BOOST_JOIN (get_function_invoker, BOOST_FUNCTION_NUM_ARGS)
 
template<typename FunctionObj , typename R BOOST_PP_ENUM_PARAMS>
struct boost::detail::function::BOOST_JOIN (get_function_obj_invoker, BOOST_FUNCTION_NUM_ARGS)
 
template<typename FunctionObj , typename R BOOST_PP_ENUM_PARAMS>
struct boost::detail::function::BOOST_JOIN (get_function_ref_invoker, BOOST_FUNCTION_NUM_ARGS)
 
template<typename Tag >
struct boost::detail::function::BOOST_JOIN (get_invoker, BOOST_FUNCTION_NUM_ARGS)
 
template<>
struct boost::detail::function::BOOST_JOIN (get_invoker, BOOST_FUNCTION_NUM_ARGS)< function_ptr_tag >
 
template<typename R BOOST_PP_ENUM_PARAMS>
struct boost::detail::function::BOOST_JOIN (basic_vtable, BOOST_FUNCTION_NUM_ARGS)
 vtable for a specific boost::function instance. More...
 
 boost::BOOST_STATIC_CONSTANT (int, args=BOOST_FUNCTION_NUM_ARGS)
 
 boost::BOOST_STATIC_CONSTANT (int, arity=BOOST_FUNCTION_NUM_ARGS)
 
 boost::BOOST_PP_REPEAT (BOOST_FUNCTION_NUM_ARGS, BOOST_FUNCTION_ARG_TYPE, BOOST_PP_EMPTY) typedef BOOST_JOIN(function
 
 boost::BOOST_JOIN (function, BOOST_FUNCTION_NUM_ARGS)()
 
template<typename Functor , typename Allocator >
void boost::assign (Functor BOOST_FUNCTION_TARGET_FIX(const &) f, Allocator a)
 
 boost::operator safe_bool () const
 
bool boost::operator! () const
 

Variables

BOOST_FUNCTION_NUM_ARGS boost::self_type
 
Allocator Allocator boost::a
 

Macro Definition Documentation

#define BOOST_FUNCTION_ARG_TYPE (   J,
  I,
 
)    typedef BOOST_PP_CAT(T,I) BOOST_PP_CAT(BOOST_PP_CAT(arg, BOOST_PP_INC(I)),_type);
#define BOOST_FUNCTION_ARGS   BOOST_PP_ENUM_PARAMS(BOOST_FUNCTION_NUM_ARGS, a)
#define BOOST_FUNCTION_COMMA
#define BOOST_FUNCTION_FUNCTION   BOOST_JOIN(function,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_FUNCTION_INVOKER   BOOST_JOIN(function_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_FUNCTION_OBJ_INVOKER   BOOST_JOIN(function_obj_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_FUNCTION_REF_INVOKER   BOOST_JOIN(function_ref_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_GET_FUNCTION_INVOKER   BOOST_JOIN(get_function_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_GET_FUNCTION_OBJ_INVOKER   BOOST_JOIN(get_function_obj_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_GET_FUNCTION_REF_INVOKER   BOOST_JOIN(get_function_ref_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_GET_INVOKER   BOOST_JOIN(get_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_GET_MEMBER_INVOKER   BOOST_JOIN(get_member_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_MEMBER_INVOKER   BOOST_JOIN(function_mem_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_PARM (   J,
  I,
 
)    BOOST_PP_CAT(T,I) BOOST_PP_CAT(a,I)
#define BOOST_FUNCTION_PARTIAL_SPEC   R (void)
#define BOOST_FUNCTION_RETURN (   X)    X
#define BOOST_FUNCTION_TEMPLATE_ARGS   BOOST_PP_ENUM_PARAMS(BOOST_FUNCTION_NUM_ARGS, T)
#define BOOST_FUNCTION_TEMPLATE_PARMS   BOOST_PP_ENUM_PARAMS(BOOST_FUNCTION_NUM_ARGS, typename T)
#define BOOST_FUNCTION_VOID_FUNCTION_INVOKER   BOOST_JOIN(void_function_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_VOID_FUNCTION_OBJ_INVOKER   BOOST_JOIN(void_function_obj_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_VOID_FUNCTION_REF_INVOKER   BOOST_JOIN(void_function_ref_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_VOID_MEMBER_INVOKER   BOOST_JOIN(function_void_mem_invoker,BOOST_FUNCTION_NUM_ARGS)
#define BOOST_FUNCTION_VOID_RETURN_TYPE   void
#define BOOST_FUNCTION_VTABLE   BOOST_JOIN(basic_vtable,BOOST_FUNCTION_NUM_ARGS)