Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
has_static_member_data.hpp File Reference
#include <boost/config.hpp>
#include <boost/preprocessor/cat.hpp>
#include <boost/tti/gen/has_static_member_data_gen.hpp>
#include <boost/tti/detail/dstatic_mem_data.hpp>
Include dependency graph for has_static_member_data.hpp:
This graph shows which files directly or indirectly include this file:

Macros

#define BOOST_TTI_TRAIT_HAS_STATIC_MEMBER_DATA(trait, name)
 Expands to a metafunction which tests whether a static member data with a particular name and type exists. More...
 
#define BOOST_TTI_HAS_STATIC_MEMBER_DATA(name)
 Expands to a metafunction which tests whether a static member data with a particular name and type exists. More...
 

Macro Definition Documentation

#define BOOST_TTI_HAS_STATIC_MEMBER_DATA (   name)
Value:
( \
) \
const int name
Definition: gzip.hpp:94
#define BOOST_TTI_TRAIT_HAS_STATIC_MEMBER_DATA(trait, name)
Expands to a metafunction which tests whether a static member data with a particular name and type ex...
Definition: has_static_member_data.hpp:47
#define BOOST_TTI_HAS_STATIC_MEMBER_DATA_GEN(name)
Generates the macro metafunction name for BOOST_TTI_HAS_STATIC_MEMBER_DATA.
Definition: has_static_member_data_gen.hpp:27

Expands to a metafunction which tests whether a static member data with a particular name and type exists.

name = the name of the inner member.

generates a metafunction called "has_static_member_data_name" where 'name' is the macro parameter.

      The metafunction types and return:

        BOOST_TTI_TP_T    = the enclosing type.

        BOOST_TTI_TP_TYPE = the static member data type,
                   in the form of a data type,
                   in which to look for our 'name'.

        returns = 'value' is true if the 'name' exists,
                  with the appropriate BOOST_TTI_TP_TYPE type,
                  within the enclosing BOOST_TTI_TP_T type,
                  otherwise 'value' is false.
#define BOOST_TTI_TRAIT_HAS_STATIC_MEMBER_DATA (   trait,
  name 
)
Value:
BOOST_TTI_DETAIL_TRAIT_HAS_STATIC_MEMBER_DATA(trait,name) \
template<class BOOST_TTI_TP_T,class BOOST_TTI_TP_TYPE> \
struct trait \
{ \
typedef typename \
BOOST_PP_CAT(trait,_detail_hsd)<BOOST_TTI_TP_T,BOOST_TTI_TP_TYPE>::type type; \
}; \
const int name
Definition: gzip.hpp:94
#define BOOST_PP_CAT(a, b)
Definition: cat.hpp:24
typed_value< T > * value()
Creates a typed_value instance.
adjacency_iterator typedef T::adjacency_iterator type
Definition: graph_traits.hpp:42
#define BOOST_STATIC_CONSTANT(type, assignment)
Definition: suffix.hpp:394

Expands to a metafunction which tests whether a static member data with a particular name and type exists.

trait = the name of the metafunction within the tti namespace.

name = the name of the inner member.

generates a metafunction called "trait" where 'trait' is the macro parameter.

      The metafunction types and return:

        BOOST_TTI_TP_T    = the enclosing type.

        BOOST_TTI_TP_TYPE = the static member data type,
                   in the form of a data type,
                   in which to look for our 'name'.

        returns = 'value' is true if the 'name' exists,
                  with the BOOST_TTI_TP_TYPE type,
                  within the enclosing BOOST_TTI_TP_T type,
                  otherwise 'value' is false.