| Home | Libraries | People | FAQ | More

## Struct template valid_member_metafunction

boost::tti::valid_member_metafunction — A metafunction which checks whether the invoked macro metafunction generated by BOOST_TTI_MEMBER_TYPE ( BOOST_TTI_TRAIT_MEMBER_TYPE ) hold a valid type.

## Synopsis

    // In header: <boost/tti/member_type.hpp>

    template<typename BOOST_TTI_METAFUNCTION>
    struct valid_member_metafunction : public boost::mpl::not_< boost::is_same< BOOST_TTI_METAFUNCTION::type, BOOST_TTI_METAFUNCTION::boost_tti_marker_type > >
    {
    };

## Description

The metafunction 'valid_member_metafunction', which is in the boost::tti namespace, takes the form of:

    template<class BOOST_TTI_METAFUNCTION>
    struct valid_member_metafunction
      {
      static const value = unspecified;
      typedef mpl::bool_<true-or-false> type;
      };

    The metafunction types and return:

      BOOST_TTI_METAFUNCTION = The invoked macro metafunction generated by BOOST_TTI_MEMBER_TYPE ( BOOST_TTI_TRAIT_MEMBER_TYPE ).

      returns          = 'value' is true if the nested type of the invoked metafunction is valid, otherwise 'value' is false.
                         A valid type means that the invoked metafunction's inner 'type' is not the marker type.