From c98bda77c9627770bcbb7bb44cf31792df339301 Mon Sep 17 00:00:00 2001 From: Edward Diener Date: Thu, 10 Feb 2011 00:21:18 +0000 Subject: [PATCH] Updated the documentation for the metafunction classes [SVN r68757] --- doc/TTIHistory.qbk | 5 + doc/TTIIntroduction.qbk | 7 +- doc/TTIMetaClasses.qbk | 139 +++++ doc/TTIMetafunctions.qbk | 35 +- doc/TTINestedType.qbk | 3 +- doc/TTIUsingNTM.qbk | 29 +- doc/TypeTraitsIntrospection.pdf | Bin 395929 -> 540668 bytes doc/TypeTraitsIntrospection.qbk | 1 + doc/html/TTI_HAS_MEMBER.html | 10 +- doc/html/TTI_HAS_MEMBER_DATA.html | 10 +- doc/html/TTI_HAS_MEMBER_FUNCTION.html | 10 +- doc/html/TTI_HAS_STATIC_MEMBER.html | 10 +- doc/html/TTI_HAS_STATIC_MEMBER_FUNCTION.html | 10 +- doc/html/TTI_HAS_TEMPLATE.html | 10 +- doc/html/TTI_HAS_TEMPLATE_CHECK_PARAMS.html | 10 +- doc/html/TTI_HAS_TYPE.html | 10 +- doc/html/TTI_MEMBER_TYPE.html | 10 +- doc/html/TTI_MTFC_HAS_MEMBER.html | 46 ++ doc/html/TTI_MTFC_HAS_MEMBER_DATA.html | 47 ++ doc/html/TTI_MTFC_HAS_MEMBER_FUNCTION.html | 49 ++ doc/html/TTI_MTFC_HAS_STATIC_MEMBER.html | 48 ++ .../TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION.html | 49 ++ doc/html/TTI_MTFC_HAS_TEMPLATE.html | 47 ++ .../TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS.html | 47 ++ doc/html/TTI_MTFC_HAS_TYPE.html | 47 ++ doc/html/TTI_MTFC_MEMBER_TYPE.html | 48 ++ doc/html/TTI_MTFC_TRAIT_HAS_MEMBER.html | 48 ++ doc/html/TTI_MTFC_TRAIT_HAS_MEMBER_DATA.html | 49 ++ .../TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION.html | 51 ++ .../TTI_MTFC_TRAIT_HAS_STATIC_MEMBER.html | 49 ++ ...MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION.html | 51 ++ doc/html/TTI_MTFC_TRAIT_HAS_TEMPLATE.html | 48 ++ ..._MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html | 49 ++ doc/html/TTI_MTFC_TRAIT_HAS_TYPE.html | 48 ++ doc/html/TTI_MTFC_TRAIT_MEMBER_TYPE.html | 49 ++ doc/html/TTI_TRAIT_HAS_MEMBER.html | 13 +- doc/html/TTI_TRAIT_HAS_MEMBER_DATA.html | 10 +- doc/html/TTI_TRAIT_HAS_MEMBER_FUNCTION.html | 10 +- doc/html/TTI_TRAIT_HAS_STATIC_MEMBER.html | 10 +- .../TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION.html | 10 +- doc/html/TTI_TRAIT_HAS_TEMPLATE.html | 10 +- .../TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html | 10 +- doc/html/TTI_TRAIT_HAS_TYPE.html | 8 +- doc/html/TTI_TRAIT_MEMBER_TYPE.html | 10 +- .../TTI_VM_HAS_TEMPLATE_CHECK_PARAMS.html | 10 +- ...TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS.html | 47 ++ ..._MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html | 48 ++ ...TI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html | 8 +- .../tti/TTIntrospectionTemplate_hpp.html | 10 +- .../boost/tti/TTIntrospectionVM_hpp.html | 10 +- doc/html/index.html | 14 +- doc/html/index/s16.html | 521 ++++++++++++++++++ .../tti_acknowledgments.html | 8 +- .../tti_detail.html | 12 +- .../tti_history.html | 14 +- .../tti_metaclasses.html | 420 ++++++++++++++ .../tti_metafunctions.html | 69 ++- .../tti_nested_type.html | 9 +- .../tti_tests.html | 6 +- .../tti_usingMM.html | 34 +- .../tti_usingNTM.html | 50 +- doc/html/tti/mf_has_member_data.html | 10 +- doc/html/tti/mf_has_member_function.html | 4 +- doc/html/tti/mf_has_static_data.html | 10 +- .../tti/mf_has_static_member_fu_id397272.html | 54 ++ .../tti/mf_has_static_member_fu_id406010.html | 54 ++ .../tti/mf_has_static_member_fu_id410380.html | 54 ++ .../tti/mf_has_static_member_fu_id412568.html | 54 ++ .../tti/mf_has_static_member_fu_id413654.html | 54 ++ .../tti/mf_has_static_member_fu_id422394.html | 54 ++ .../tti/mf_has_static_member_fu_id426663.html | 54 ++ doc/html/tti/mf_has_template.html | 4 +- .../tti/mf_has_template_check_p_id398430.html | 49 ++ .../tti/mf_has_template_check_p_id407168.html | 49 ++ .../tti/mf_has_template_check_p_id411538.html | 49 ++ .../tti/mf_has_template_check_p_id413726.html | 49 ++ .../tti/mf_has_template_check_p_id414759.html | 49 ++ .../tti/mf_has_template_check_p_id423552.html | 49 ++ .../tti/mf_has_template_check_p_id427769.html | 49 ++ doc/html/tti/mf_has_type.html | 4 +- doc/html/tti/mf_member_type.html | 4 +- doc/html/tti/mf_valid_member_type.html | 2 +- doc/html/tti/valid_member_type.html | 2 +- .../typetraitsintrospection_reference.html | 22 +- include/boost/tti/TTIntrospection.hpp | 95 +++- include/boost/tti/TTIntrospectionTemplate.hpp | 3 +- 86 files changed, 3180 insertions(+), 261 deletions(-) create mode 100644 doc/TTIMetaClasses.qbk create mode 100644 doc/html/TTI_MTFC_HAS_MEMBER.html create mode 100644 doc/html/TTI_MTFC_HAS_MEMBER_DATA.html create mode 100644 doc/html/TTI_MTFC_HAS_MEMBER_FUNCTION.html create mode 100644 doc/html/TTI_MTFC_HAS_STATIC_MEMBER.html create mode 100644 doc/html/TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION.html create mode 100644 doc/html/TTI_MTFC_HAS_TEMPLATE.html create mode 100644 doc/html/TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS.html create mode 100644 doc/html/TTI_MTFC_HAS_TYPE.html create mode 100644 doc/html/TTI_MTFC_MEMBER_TYPE.html create mode 100644 doc/html/TTI_MTFC_TRAIT_HAS_MEMBER.html create mode 100644 doc/html/TTI_MTFC_TRAIT_HAS_MEMBER_DATA.html create mode 100644 doc/html/TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION.html create mode 100644 doc/html/TTI_MTFC_TRAIT_HAS_STATIC_MEMBER.html create mode 100644 doc/html/TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION.html create mode 100644 doc/html/TTI_MTFC_TRAIT_HAS_TEMPLATE.html create mode 100644 doc/html/TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html create mode 100644 doc/html/TTI_MTFC_TRAIT_HAS_TYPE.html create mode 100644 doc/html/TTI_MTFC_TRAIT_MEMBER_TYPE.html create mode 100644 doc/html/TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS.html create mode 100644 doc/html/TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html create mode 100644 doc/html/index/s16.html create mode 100644 doc/html/the_type_traits_introspection_library/tti_metaclasses.html create mode 100644 doc/html/tti/mf_has_static_member_fu_id397272.html create mode 100644 doc/html/tti/mf_has_static_member_fu_id406010.html create mode 100644 doc/html/tti/mf_has_static_member_fu_id410380.html create mode 100644 doc/html/tti/mf_has_static_member_fu_id412568.html create mode 100644 doc/html/tti/mf_has_static_member_fu_id413654.html create mode 100644 doc/html/tti/mf_has_static_member_fu_id422394.html create mode 100644 doc/html/tti/mf_has_static_member_fu_id426663.html create mode 100644 doc/html/tti/mf_has_template_check_p_id398430.html create mode 100644 doc/html/tti/mf_has_template_check_p_id407168.html create mode 100644 doc/html/tti/mf_has_template_check_p_id411538.html create mode 100644 doc/html/tti/mf_has_template_check_p_id413726.html create mode 100644 doc/html/tti/mf_has_template_check_p_id414759.html create mode 100644 doc/html/tti/mf_has_template_check_p_id423552.html create mode 100644 doc/html/tti/mf_has_template_check_p_id427769.html diff --git a/doc/TTIHistory.qbk b/doc/TTIHistory.qbk index 401ee87..4b2b285 100644 --- a/doc/TTIHistory.qbk +++ b/doc/TTIHistory.qbk @@ -1,5 +1,10 @@ [section:tti_history History] +[heading Version 1.2] + +* Added the set of metafunction class macros for passing the macro metafunctions as metadata. + This complements passing the macro metafunctions as metadata using placeholder expressions. + [heading Version 1.1] * Library now also compiles with gcc 3.4.2 and gcc 3.4.5. diff --git a/doc/TTIIntroduction.qbk b/doc/TTIIntroduction.qbk index 077be1b..c8894a2 100644 --- a/doc/TTIIntroduction.qbk +++ b/doc/TTIIntroduction.qbk @@ -1,6 +1,6 @@ [section:tti_intro Introduction] -Welcome to the Type Traits Introspection library version 1.1 . +Welcome to the Type Traits Introspection library version 1.2 . The Type Traits Introspection library, or TTI for short, is a library of macros generating metafunctions, and a set of parallel nullary type @@ -39,6 +39,11 @@ The functionality of the library may be summed up as: when specifying function and data syntax rather than a composite type. These metafunctions are called 'nullary type metafunctions' in the documentation. +* Provide a set of macros for all of the macro metafunctions + which create metafunction classes, so the metafunctions + generated by the macro metafunctions can be passed as metadata. + These can be used by the nullary type metafunctions, and may + find other uses for the template metaprogrammer. The library is a header only library. diff --git a/doc/TTIMetaClasses.qbk b/doc/TTIMetaClasses.qbk new file mode 100644 index 0000000..d743ac9 --- /dev/null +++ b/doc/TTIMetaClasses.qbk @@ -0,0 +1,139 @@ +[section:tti_metaclasses Macro Metafunctions as Metadata] + +As specified in the Boost MPL library, there are two ways to pass metafunctions +as metadata, and both ways fall under the Boost MPL terminology of 'lambda expressions': + +* As a metafunction class +* As a placeholder expression + +Using a placeholder expression is the easiest way and does not require the programmer to create +a metafunction class for passing the metadata. The syntax for this is fairly simple. The syntax +for passing a macro metafunction becomes 'macrometafunction<\_>' etc. depending +on how many parameters are bring passed. Thus for two parameters we would have +'macrometafunction<\_,\_>' etc., with another placeholder ('\_') added for each subsequent parameter. + +However using a placeholder expression may not be the fastest way when considering compile-time +speed. Because of this the TTI library provides a set of macros for each of the macro metafunctions +which generate a corresponding metafunction class. We will call this set of macros +the 'metafunction class macros'. + +These macros take exactly the same macro parameters as their corresponding +macro metafunctions. They generate a corresponding metafunction class rather +than a metafunction itself, which allows us to pass our macro metafunctions +as metadata, just as using placeholder expressions allows us to do. + +For these metafunction class macros there is a simple form and a complex form name +just as there is for the macro metafunctions. For each macro metafunction, +the name for the corresponding metafunction class macro is the macro +metafunction name with the sequence 'MTFC\_' ( for "MeTaFunction Class" ) +following the TTI\_ ( or TTI\_VM\_ ) portion of the macro metafunction name. +The subsequent metafunction class name, using the simple form, is the same name as +the corresponding macro metafunction name but with 'mtfc\_' prepended to the name. + +As with the complex form name of the macro metafunctions, +the complex form name of the corresponding metafunction class macros is +completely determined by the first 'trait' parameter. + +In the following table I do not specify the macro parameters +as they are exactly the same as those for their corresponding macro +metafunction: + +[table:tbmetaclasses TTI Metafunction Classes + [ + [Macro Metafunction] + [Metafunction Class Macro] + [Metafunction Class Name] + ] + [ + [[macroref TTI_HAS_TYPE]] + [[macroref TTI_MTFC_HAS_TYPE]] + [tti::mtfc\_has\_type\_'name'] + ] + [ + [[macroref TTI_TRAIT_HAS_TYPE]] + [[macroref TTI_MTFC_TRAIT_HAS_TYPE]] + [tti::'trait'] + ] + [ + [[macroref TTI_HAS_TEMPLATE]] + [[macroref TTI_MTFC_HAS_TEMPLATE]] + [tti::mtfc\_has\_template\_'name'] + ] + [ + [[macroref TTI_TRAIT_HAS_TEMPLATE]] + [[macroref TTI_MTFC_TRAIT_HAS_TEMPLATE]] + [tti::'trait'] + ] + [ + [[macroref TTI_HAS_TEMPLATE_CHECK_PARAMS]] + [[macroref TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS]] + [tti::mtfc\_has\_template\_check\_params\_'name'] + ] + [ + [[macroref TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS]] + [[macroref TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS]] + [tti::'trait'] + ] + [ + [[macroref TTI_VM_HAS_TEMPLATE_CHECK_PARAMS]] + [[macroref TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS]] + [tti::mtfc\_has\_template\_check\_params\_'name'] + ] + [ + [[macroref TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS]] + [[macroref TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS]] + [tti::'trait'] + ] + [ + [[macroref TTI_HAS_MEMBER]] + [[macroref TTI_MTFC_HAS_MEMBER]] + [tti::mtfc\_has\_member\_'name'] + ] + [ + [[macroref TTI_TRAIT_HAS_MEMBER]] + [[macroref TTI_MTFC_TRAIT_HAS_MEMBER]] + [tti::'trait'] + ] + [ + [[macroref TTI_HAS_MEMBER_DATA]] + [[macroref TTI_MTFC_HAS_MEMBER_DATA]] + [tti::mtfc\_has\_member\_data\_'name'] + ] + [ + [[macroref TTI_TRAIT_HAS_MEMBER_DATA]] + [[macroref TTI_MTFC_TRAIT_HAS_MEMBER_DATA]] + [tti::'trait'] + ] + [ + [[macroref TTI_HAS_MEMBER_FUNCTION]] + [[macroref TTI_MTFC_HAS_MEMBER_FUNCTION]] + [tti::mtfc\_has\_member\_function\_'name'] + ] + [ + [[macroref TTI_TRAIT_HAS_MEMBER_FUNCTION]] + [[macroref TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION]] + [tti::'trait'] + ] + [ + [[macroref TTI_HAS_STATIC_MEMBER]] + [[macroref TTI_MTFC_HAS_STATIC_MEMBER]] + [tti::has\_static\_member\_'name'] + ] + [ + [[macroref TTI_TRAIT_HAS_STATIC_MEMBER]] + [[macroref TTI_MTFC_TRAIT_HAS_STATIC_MEMBER]] + [tti::'trait'] + ] + [ + [[macroref TTI_HAS_STATIC_MEMBER_FUNCTION]] + [[macroref TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION]] + [tti::has\_static\_member\_function\_'name'] + ] + [ + [[macroref TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION]] + [[macroref TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION]] + [tti::'trait'] + ] +] + +[endsect] diff --git a/doc/TTIMetafunctions.qbk b/doc/TTIMetafunctions.qbk index 8d90767..41df866 100644 --- a/doc/TTIMetafunctions.qbk +++ b/doc/TTIMetafunctions.qbk @@ -1,30 +1,41 @@ [section:tti_metafunctions Nullary Type Metafunctions] -The nullary type metafunctions parallel most of the macro metafunctions but more easily allow -a syntax where nested types can be specified without needing to manually reach into the 'type' -member of TTI\_MEMBER\_TYPE or its nullary type metafunction equivalent of tti::mf\_member\_type. +The macro metafunctions provide a complete set of functionality for +anything one would like to do using the TTI library. Why then do we +have another set of parallel functionality as nullary type metafunctions ? + +The nullary type metafunctions parallel those macro metafunctions in which types are specified +individually rather than in a composite manner. The individual types are passed to the nullary +type metafunctions as nullary metafunctions, hence the name of this group of metafunctions. +They more easily allow a syntax where nested types can be specified without needing to manually +reach into the 'type' member of TTI\_MEMBER\_TYPE or the 'type' member of its nullary type +metafunction equivalent called tti::mf\_member\_type. + In a very real way the nullary type metafunctions exist just to provide syntactic improvements over the macro metafunctions and are not needed to use the library, since all of the library functionality is already provided with the macro metafunctions. Nonetheless syntactic ease of use is a very real goal of the TTI library and therefore these metafunctions are provided to allow that syntactic improvement. -For each of these nullary type metafunctions the first parameter is a Boost MPL lambda expression -using its corresponding the macro metafunction to pass metafunctions as data. The easiest way to -do this is to use a Boost MPL placeholder expression. The syntax for passing the corresponding -macro metafunction becomes 'macrometafunction<_>' etc. depending on how many parameters are bring passed. -Thus for two parameters we would have 'macrometafunction<_,_>' etc., with another placeholder ('_') added -for each subsequent parameter. +The nullary type metafunctions reuse the metafunctions generated by the macro metafunctions. +To do this the result of a corresponding macro metafunction needs to be passed as metadata to a given +nullary metafunction. + +A lambda expression, in the form of a metafunction class or a placeholder expression, is passed as the +first parameter to our nullary type metafunctions. We have already seen how the TTI library supplies +metafunction classes through the use of metafunction class macros for each of the macro metafunctions. +The end-user can use these metafunction classes directly, or can use placeholder expressions with the +metafunctions generated by the macro metafunctions. -The remaining parameter are 'types'. These 'types' always consist first of the enclosing type and then +The remaining parameters are 'types'. These 'types' always consist first of the enclosing type and then possibly other types which make up the signature of whatever inner element we are introspecting. Each of these 'types' is passed as a nullary metafunction whose typedef 'type' is the actual type. The only exception to this use of nullary type metafunctions when specifying 'types' is when a Boost function_types tag type, which is optional, is specified as an addition to the function signature. -Also when dealing with a function signature and parameter types are being passed, while the +Also when dealing with a function signature and parameter types being passed, while the parameter 'types' themselves are in the form of nullary metafunctions, the MPL forward sequence -which contains the parameter 'types' should not be wrapped as a nullary metafunction. +which contains the parameter 'types' is a plain type and should not be wrapped as a nullary metafunction. For a type which is in scope, we can always use boost::mpl::identity to create our nullary metafunction, and there can never be a compiler error for diff --git a/doc/TTINestedType.qbk b/doc/TTINestedType.qbk index 38032b6..280454b 100644 --- a/doc/TTINestedType.qbk +++ b/doc/TTINestedType.qbk @@ -188,7 +188,6 @@ are called 'nullary type metafunctions'. In this group there is also a nullary m paralleling our TTI\_MEMBER\_TYPE macro metafunction, and therefore a further construct making the specifying of nested types easy and error-free to use. -This group of nullary type metafunctions will be -fully explained later after we give some examples of macro metafunction use. +This group of nullary type metafunctions will be fully explained later. [endsect] diff --git a/doc/TTIUsingNTM.qbk b/doc/TTIUsingNTM.qbk index c838751..c8443ee 100644 --- a/doc/TTIUsingNTM.qbk +++ b/doc/TTIUsingNTM.qbk @@ -85,6 +85,11 @@ Now let us create and invoke the nested metafunctions for each of our inner elem to see if type T above corresponds to our hypothetical type above. Imagine this being within 'OurTemplateClass' above. In the examples below the same macro is invoked just once to avoid ODR violations. + +I will also be mixing the way the macro metafunction metadata is passed to our +nullary type metafunctions, whether as a metafunction class or as a placeholder +expression. Both will work just fine since our nullary type metafunctions work +with any lambda expression as the first template parameter. [heading Member type] @@ -94,7 +99,7 @@ will produce a compiler error even if our structure does not correspond to T's reality. This also illustrates using 'tti::mf_member_type'. TTI_MEMBER_TYPE(BType) - TTI_MEMBER_TYPE(CType) + TTI_MTFC_MEMBER_TYPE(CType) TTI_MEMBER_TYPE(DType) typedef @@ -108,7 +113,7 @@ to T's reality. This also illustrates using 'tti::mf_member_type'. typedef tti::mf_member_type < - tti::member_type_CType<_>, + tti::mtfc_member_type_CType, BTypeNM > CTypeNM; @@ -148,11 +153,11 @@ metafunction to the same effect: Does T have a nested typedef called 'ADoubleType' within 'BType::CType::DType' whose type is a 'double' ? - TTI_HAS_TYPE(ADoubleType) + TTI_MTFC_HAS_TYPE(ADoubleType) tti::mf_has_type < - tti::has_type_ADoubleType<_,_>, + tti::mtfc_has_type_ADoubleType, DTypeNM, boost::mpl::identity > @@ -162,11 +167,11 @@ within 'BType::CType::DType' whose type is a 'double' ? Does T have a nested class template called 'AMemberTemplate' within 'BType::CType' whose template parameters are all types ('class' or 'typename') ? - TTI_HAS_TEMPLATE(AMemberTemplate) + TTI_MTFC_HAS_TEMPLATE(AMemberTemplate) tti::mf_has_template < - tti::has_template_AMemberTemplate<_>, + tti::mtfc_has_template_AMemberTemplate, CTypeNM > @@ -191,11 +196,11 @@ within 'BType::CType' whose template parameters are specified exactly ? [note Include the 'TTIntrospectionVM.hpp' header file when using this macro.] - TTI_VM_HAS_TEMPLATE_CHECK_PARAMS(MoreParameters,class,class,int,short,class,template class InnerTemplate,class) + TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS(MoreParameters,class,class,int,short,class,template class InnerTemplate,class) tti::mf_has_template_check_params < - tti::has_template_check_params_MoreParameters<_>, + tti::mtfc_has_template_check_params_MoreParameters, CTypeNM > @@ -203,11 +208,11 @@ when using this macro.] Does T have a member data called 'IntBT' whose type is 'BType' ? - TTI_HAS_MEMBER_DATA(IntBT) + TTI_MTFC_HAS_MEMBER_DATA(IntBT) tti::mf_has_member_data < - tti::has_member_data_IntBT<_,_>, + tti::mtfc_has_member_data_IntBT, boost::mpl::identity, BTypeNM > @@ -233,11 +238,11 @@ within 'BType::CType::DType' whose type is 'int (short) const' ? Does T have a static member data called 'DSMember' within 'BType::CType::DType' whose type is 'short' ? - TTI_HAS_STATIC_MEMBER(DSMember) + TTI_MTFC_HAS_STATIC_MEMBER(DSMember) tti::mf_has_static_data < - tti::has_static_member_DSMember<_,_>, + tti::mtfc_has_static_member_DSMember, DTypeNM, boost::mpl::identity > diff --git a/doc/TypeTraitsIntrospection.pdf b/doc/TypeTraitsIntrospection.pdf index 194a9ea472e2e3ec6bfe68fcc68453ca7d2e8f14..a7981193656cdd26afc0bb21c11dcc17bcceb786 100644 GIT binary patch literal 540668 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

M*EYKz^Ej})iG5+g&V6|f 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

GggG!w{?;V?09Oc^7Wu4aZ7pja_R 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 - - + +


-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_HAS_MEMBER(name)
-

Description

+

Description

name = the name of the inner member.

returns = a metafunction called "tti::has_member_name" where 'name' is the macro parameter.

The metafunction types and return:

@@ -40,7 +40,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_HAS_MEMBER_DATA.html b/doc/html/TTI_HAS_MEMBER_DATA.html index 5031077..0e9befb 100644 --- a/doc/html/TTI_HAS_MEMBER_DATA.html +++ b/doc/html/TTI_HAS_MEMBER_DATA.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_HAS_MEMBER_DATA(name)
-

Description

+

Description

name = the name of the inner member.

returns = a metafunction called "tti::has_member_data_name" where 'name' is the macro parameter.

The metafunction types and return:

@@ -41,7 +41,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_HAS_MEMBER_FUNCTION.html b/doc/html/TTI_HAS_MEMBER_FUNCTION.html index 46e6507..5150199 100644 --- a/doc/html/TTI_HAS_MEMBER_FUNCTION.html +++ b/doc/html/TTI_HAS_MEMBER_FUNCTION.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_HAS_MEMBER_FUNCTION(name)
-

Description

+

Description

name = the name of the inner member.

returns = a metafunction called "tti::has_member_function_name" where 'name' is the macro parameter.

The metafunction types and return:

@@ -43,7 +43,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_HAS_STATIC_MEMBER.html b/doc/html/TTI_HAS_STATIC_MEMBER.html index d60735d..954dec3 100644 --- a/doc/html/TTI_HAS_STATIC_MEMBER.html +++ b/doc/html/TTI_HAS_STATIC_MEMBER.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_HAS_STATIC_MEMBER(name)
-

Description

+

Description

name = the name of the inner member.

returns = a metafunction called "tti::has_static_member_name" where 'name' is the macro parameter.

@@ -42,7 +42,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_HAS_STATIC_MEMBER_FUNCTION.html b/doc/html/TTI_HAS_STATIC_MEMBER_FUNCTION.html index acf4d37..6383aa4 100644 --- a/doc/html/TTI_HAS_STATIC_MEMBER_FUNCTION.html +++ b/doc/html/TTI_HAS_STATIC_MEMBER_FUNCTION.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_HAS_STATIC_MEMBER_FUNCTION(name)
-

Description

+

Description

name = the name of the inner member.

returns = a metafunction called "tti::has_static_member_function_name" where 'name' is the macro parameter.

The metafunction types and return:

@@ -43,7 +43,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_HAS_TEMPLATE.html b/doc/html/TTI_HAS_TEMPLATE.html index 4b3c4ad..d221da9 100644 --- a/doc/html/TTI_HAS_TEMPLATE.html +++ b/doc/html/TTI_HAS_TEMPLATE.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_HAS_TEMPLATE(name)
-

Description

+

Description

name = the name of the inner template.

returns = a metafunction called "tti::has_template_name" where 'name' is the macro parameter.

The metafunction types and return:

@@ -41,7 +41,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_HAS_TEMPLATE_CHECK_PARAMS.html b/doc/html/TTI_HAS_TEMPLATE_CHECK_PARAMS.html index 155e3af..05c413e 100644 --- a/doc/html/TTI_HAS_TEMPLATE_CHECK_PARAMS.html +++ b/doc/html/TTI_HAS_TEMPLATE_CHECK_PARAMS.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_HAS_TEMPLATE_CHECK_PARAMS(name, tpSeq)
-

Description

+

Description

name = the name of the inner class template.
tpSeq = a Boost PP sequence which has the class template parameters. Each part of the template parameters separated by a comma ( , ) is put in a separate sequence element.

returns = a metafunction called "tti::has_template_check_params_name" where 'name' is the macro parameter.

@@ -41,7 +41,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_HAS_TYPE.html b/doc/html/TTI_HAS_TYPE.html index 3d6fcdb..33f6a9c 100644 --- a/doc/html/TTI_HAS_TYPE.html +++ b/doc/html/TTI_HAS_TYPE.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_HAS_TYPE(name)
-

Description

+

Description

name = the name of the inner type.

returns = a metafunction called "tti::has_type_name" where 'name' is the macro parameter.

The metafunction types and return:

@@ -41,7 +41,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_MEMBER_TYPE.html b/doc/html/TTI_MEMBER_TYPE.html index 5fab19d..c617941 100644 --- a/doc/html/TTI_MEMBER_TYPE.html +++ b/doc/html/TTI_MEMBER_TYPE.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_MEMBER_TYPE(name)
-

Description

+

Description

name = the name of the inner type.

returns = a metafunction called "tti::member_type_name" where 'name' is the macro parameter.

The metafunction types and return:

@@ -42,7 +42,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_MTFC_HAS_MEMBER.html b/doc/html/TTI_MTFC_HAS_MEMBER.html new file mode 100644 index 0000000..90687ca --- /dev/null +++ b/doc/html/TTI_MTFC_HAS_MEMBER.html @@ -0,0 +1,46 @@ + + + +Macro TTI_MTFC_HAS_MEMBER + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_HAS_MEMBER

+

TTI_MTFC_HAS_MEMBER — Expands to a metafunction class which tests whether a member data or member function with a particular name and type exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_HAS_MEMBER(name)
+
+

Description

+

name = the name of the inner member.

+

returns = a metafunction class called "tti::mtfc_has_member_name" where 'name' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the type, in the form of a member data pointer or member function pointer, in which to look for our 'name'.
+ returns = 'value' is true if the 'name' exists, with the appropriate type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_HAS_MEMBER_DATA.html b/doc/html/TTI_MTFC_HAS_MEMBER_DATA.html new file mode 100644 index 0000000..6e67b5c --- /dev/null +++ b/doc/html/TTI_MTFC_HAS_MEMBER_DATA.html @@ -0,0 +1,47 @@ + + + +Macro TTI_MTFC_HAS_MEMBER_DATA + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_HAS_MEMBER_DATA

+

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

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_HAS_MEMBER_DATA(name)
+
+

Description

+

name = the name of the inner member.

+

returns = a metafunction class called "tti::mtfc_has_member_data_name" where 'name' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ R = the type of the member data.
+ returns = 'value' is true if the 'name' exists, with the appropriate type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_HAS_MEMBER_FUNCTION.html b/doc/html/TTI_MTFC_HAS_MEMBER_FUNCTION.html new file mode 100644 index 0000000..82cda68 --- /dev/null +++ b/doc/html/TTI_MTFC_HAS_MEMBER_FUNCTION.html @@ -0,0 +1,49 @@ + + + +Macro TTI_MTFC_HAS_MEMBER_FUNCTION + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_HAS_MEMBER_FUNCTION

+

TTI_MTFC_HAS_MEMBER_FUNCTION — Expands to a metafunction class which tests whether a member function with a particular name and signature exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_HAS_MEMBER_FUNCTION(name)
+
+

Description

+

name = the name of the inner member.

+

returns = a metafunction class called "tti::mtfc_has_member_function_name" where 'name' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ R = the return type of the member function.
+ FS = an optional parameter which are the parameters of the member function as a boost::mpl forward sequence.
+ TAG = an optional parameter which is a boost::function_types tag to apply to the member function.
+ returns = 'value' is true if the 'name' exists, with the appropriate type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_HAS_STATIC_MEMBER.html b/doc/html/TTI_MTFC_HAS_STATIC_MEMBER.html new file mode 100644 index 0000000..489bcde --- /dev/null +++ b/doc/html/TTI_MTFC_HAS_STATIC_MEMBER.html @@ -0,0 +1,48 @@ + + + +Macro TTI_MTFC_HAS_STATIC_MEMBER + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_HAS_STATIC_MEMBER

+

TTI_MTFC_HAS_STATIC_MEMBER — Expands to a metafunction class which tests whether a static member data or a static member function with a particular name and type exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_HAS_STATIC_MEMBER(name)
+
+

Description

+

name = the name of the inner member.

+

returns = a metafunction class called "tti::mtfc_has_static_member_name" where 'name' is the macro parameter.
+

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type.
+ Type = the static member data or static member function type, in the form of a data or function type, in which to look for our 'name'.
+ returns = 'value' is true if the 'name' exists within the enclosing type, with the appropriate type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION.html b/doc/html/TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION.html new file mode 100644 index 0000000..7569b31 --- /dev/null +++ b/doc/html/TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION.html @@ -0,0 +1,49 @@ + + + +Macro TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION

+

TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION — Expands to a metafunction class which tests whether a static member function with a particular name and signature exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION(name)
+
+

Description

+

name = the name of the inner member.

+

returns = a metafunction class called "tti::mtfc_has_static_member_function_name" where 'name' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ R = the return type of the static member function.
+ FS = an optional parameter which are the parameters of the static member function as a boost::mpl forward sequence.
+ TAG = an optional parameter which is a boost::function_types tag to apply to the static member function.
+ returns = 'value' is true if the 'name' exists, with the appropriate type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_HAS_TEMPLATE.html b/doc/html/TTI_MTFC_HAS_TEMPLATE.html new file mode 100644 index 0000000..a8ee288 --- /dev/null +++ b/doc/html/TTI_MTFC_HAS_TEMPLATE.html @@ -0,0 +1,47 @@ + + + +Macro TTI_MTFC_HAS_TEMPLATE + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_HAS_TEMPLATE

+

TTI_MTFC_HAS_TEMPLATE — Expands to a metafunction class which tests whether an inner class template with a particular name exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_HAS_TEMPLATE(name)
+
+

Description

+

name = the name of the inner template.

+

returns = a metafunction class called "tti::mtfc_has_template_name" where 'name' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ returns = 'value' is true if the 'name' template exists within the enclosing type, otherwise 'value' is false.

+

The template must have all 'class' ( or 'typename' ) parameters types.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS.html b/doc/html/TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS.html new file mode 100644 index 0000000..811b182 --- /dev/null +++ b/doc/html/TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS.html @@ -0,0 +1,47 @@ + + + +Macro TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS

+

TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS — Expands to a metafunction class which tests whether an inner class template with a particular name and signature exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS(name, tpSeq)
+
+

Description

+

name = the name of the inner class template.
+ tpSeq = a Boost PP sequence which has the class template parameters. Each part of the template parameters separated by a comma ( , ) is put in a separate sequence element.

+

returns = a metafunction class called "tti::mtfc_has_template_check_params_name" where 'name' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ returns = 'value' is true if the 'name' class template with the signature as defined by the 'tpSeq' exists within the enclosing type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_HAS_TYPE.html b/doc/html/TTI_MTFC_HAS_TYPE.html new file mode 100644 index 0000000..478b94c --- /dev/null +++ b/doc/html/TTI_MTFC_HAS_TYPE.html @@ -0,0 +1,47 @@ + + + +Macro TTI_MTFC_HAS_TYPE + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_HAS_TYPE

+

TTI_MTFC_HAS_TYPE — Expands to a metafunction class which tests whether an inner type with a particular name exists and optionally is a particular type.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_HAS_TYPE(name)
+
+

Description

+

name = the name of the inner type.

+

returns = a metafunction class called "tti::mtfc_has_type_name" where 'name' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ U = the type of the inner type named 'name' as an optional parameter.
+ returns = 'value' is true if the 'name' type exists within the enclosing type and, if type U is specified, the 'name' type is the same as the type U, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_MEMBER_TYPE.html b/doc/html/TTI_MTFC_MEMBER_TYPE.html new file mode 100644 index 0000000..956e827 --- /dev/null +++ b/doc/html/TTI_MTFC_MEMBER_TYPE.html @@ -0,0 +1,48 @@ + + + +Macro TTI_MTFC_MEMBER_TYPE + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_MEMBER_TYPE

+

TTI_MTFC_MEMBER_TYPE — Expands to a metafunction class whose typedef 'type' is either the named type or an unspecified type.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_MEMBER_TYPE(name)
+
+

Description

+

name = the name of the inner type.

+

returns = a metafunction class called "tti::mtfc_member_type_name" where 'name' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type.
+ returns = 'type' is the inner type of 'name' if the inner type exists within the enclosing type, else 'type' is an unspecified type.
+

+

The purpose of this macro is to encapsulate the 'name' type as the typedef 'type' of a metafunction class, but only if it exists within the enclosing type. This allows for a lazy evaluation of inner type existence which can be used by other metafunctions in this library.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_TRAIT_HAS_MEMBER.html b/doc/html/TTI_MTFC_TRAIT_HAS_MEMBER.html new file mode 100644 index 0000000..747126b --- /dev/null +++ b/doc/html/TTI_MTFC_TRAIT_HAS_MEMBER.html @@ -0,0 +1,48 @@ + + + +Macro TTI_MTFC_TRAIT_HAS_MEMBER + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_TRAIT_HAS_MEMBER

+

TTI_MTFC_TRAIT_HAS_MEMBER — Expands to a metafunction class which tests whether a member data or member function with a particular name and type exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_TRAIT_HAS_MEMBER(trait, name)
+
+

Description

+

trait = the name of the metafunction class within the tti namespace.
+ name = the name of the inner member.

+

returns = a metafunction class called "tti::trait" where 'trait' is the macro parameter.
+

+

The metafunction class's 'apply' metafunction types and return:

+

T = the type, in the form of a member data pointer or member function pointer, in which to look for our 'name'.
+ returns = 'value' is true if the 'name' exists, with the appropriate type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_TRAIT_HAS_MEMBER_DATA.html b/doc/html/TTI_MTFC_TRAIT_HAS_MEMBER_DATA.html new file mode 100644 index 0000000..3a8e38d --- /dev/null +++ b/doc/html/TTI_MTFC_TRAIT_HAS_MEMBER_DATA.html @@ -0,0 +1,49 @@ + + + +Macro TTI_MTFC_TRAIT_HAS_MEMBER_DATA + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_TRAIT_HAS_MEMBER_DATA

+

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

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_TRAIT_HAS_MEMBER_DATA(trait, name)
+
+

Description

+

trait = the name of the metafunction class within the tti namespace.
+ name = the name of the inner member.

+

returns = a metafunction class called "tti::trait" where 'trait' is the macro parameter.
+

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ R = the type of the member data.
+ returns = 'value' is true if the 'name' exists, with the appropriate type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION.html b/doc/html/TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION.html new file mode 100644 index 0000000..c3fbf20 --- /dev/null +++ b/doc/html/TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION.html @@ -0,0 +1,51 @@ + + + +Macro TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION

+

TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION — Expands to a metafunction class which tests whether a member function with a particular name and signature exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION(trait, name)
+
+

Description

+

trait = the name of the metafunction class within the tti namespace.
+ name = the name of the inner member.

+

returns = a metafunction class called "tti::trait" where 'trait' is the macro parameter.
+

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ R = the return type of the member function.
+ FS = an optional parameter which are the parameters of the member function as a boost::mpl forward sequence.
+ TAG = an optional parameter which is a boost::function_types tag to apply to the member function.
+ returns = 'value' is true if the 'name' exists, with the appropriate type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_TRAIT_HAS_STATIC_MEMBER.html b/doc/html/TTI_MTFC_TRAIT_HAS_STATIC_MEMBER.html new file mode 100644 index 0000000..a1eab09 --- /dev/null +++ b/doc/html/TTI_MTFC_TRAIT_HAS_STATIC_MEMBER.html @@ -0,0 +1,49 @@ + + + +Macro TTI_MTFC_TRAIT_HAS_STATIC_MEMBER + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_TRAIT_HAS_STATIC_MEMBER

+

TTI_MTFC_TRAIT_HAS_STATIC_MEMBER — Expands to a metafunction class which tests whether a static member data or a static member function with a particular name and type exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_TRAIT_HAS_STATIC_MEMBER(trait, name)
+
+

Description

+

trait = the name of the metafunction class within the tti namespace.
+ name = the name of the inner member.

+

returns = a metafunction class called "tti::trait" where 'trait' is the macro parameter.
+

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type.
+ Type = the static member data or static member function type, in the form of a data or function type, in which to look for our 'name'.
+ returns = 'value' is true if the 'name' exists within the enclosing type, with the appropriate type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION.html b/doc/html/TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION.html new file mode 100644 index 0000000..4d4a2dd --- /dev/null +++ b/doc/html/TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION.html @@ -0,0 +1,51 @@ + + + +Macro TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION

+

TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION — Expands to a metafunction class which tests whether a static member function with a particular name and signature exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION(trait, name)
+
+

Description

+

trait = the name of the metafunction class within the tti namespace.
+ name = the name of the inner member.

+

returns = a metafunction class called "tti::trait" where 'trait' is the macro parameter.
+

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ R = the return type of the static member function.
+ FS = an optional parameter which are the parameters of the static member function as a boost::mpl forward sequence.
+ TAG = an optional parameter which is a boost::function_types tag to apply to the static member function.
+ returns = 'value' is true if the 'name' exists, with the appropriate type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_TRAIT_HAS_TEMPLATE.html b/doc/html/TTI_MTFC_TRAIT_HAS_TEMPLATE.html new file mode 100644 index 0000000..df0c6c9 --- /dev/null +++ b/doc/html/TTI_MTFC_TRAIT_HAS_TEMPLATE.html @@ -0,0 +1,48 @@ + + + +Macro TTI_MTFC_TRAIT_HAS_TEMPLATE + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_TRAIT_HAS_TEMPLATE

+

TTI_MTFC_TRAIT_HAS_TEMPLATE — Expands to a metafunction class which tests whether an inner class template with a particular name exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_TRAIT_HAS_TEMPLATE(trait, name)
+
+

Description

+

trait = the name of the metafunction class within the tti namespace.
+ name = the name of the inner template.

+

returns = a metafunction class called "tti::trait" where 'trait' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ returns = 'value' is true if the 'name' template exists within the enclosing type, otherwise 'value' is false.

+

The template must have all 'class' ( or 'typename' ) parameters types.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html b/doc/html/TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html new file mode 100644 index 0000000..cf4e416 --- /dev/null +++ b/doc/html/TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html @@ -0,0 +1,49 @@ + + + +Macro TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

+

TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS — Expands to a metafunction class which tests whether an inner class template with a particular name and signature exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS(trait, name, tpSeq)
+
+

Description

+

trait = the name of the metafunction class within the tti namespace.
+ name = the name of the inner class template.
+ tpSeq = a Boost PP sequence which has the class template parameters. Each part of the template parameters separated by a comma ( , ) is put in a separate sequence element.
+

+

returns = a metafunction class called "tti::trait" where 'trait' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ returns = 'value' is true if the 'name' class template with the signature as defined by the 'tpSeq' exists within the enclosing type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_TRAIT_HAS_TYPE.html b/doc/html/TTI_MTFC_TRAIT_HAS_TYPE.html new file mode 100644 index 0000000..09654a5 --- /dev/null +++ b/doc/html/TTI_MTFC_TRAIT_HAS_TYPE.html @@ -0,0 +1,48 @@ + + + +Macro TTI_MTFC_TRAIT_HAS_TYPE + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_TRAIT_HAS_TYPE

+

TTI_MTFC_TRAIT_HAS_TYPE — Expands to a metafunction class which tests whether an inner type with a particular name exists and optionally is a particular type.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_TRAIT_HAS_TYPE(trait, name)
+
+

Description

+

trait = the name of the metafunction class within the tti namespace.
+ name = the name of the inner type.

+

returns = a metfunction class called "tti::trait" where 'trait' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ U = the type of the inner type named 'name' as an optional parameter.
+ returns = 'value' is true if the 'name' type exists within the enclosing type and, if type U is specified, the 'name' type is the same as the type U, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_MTFC_TRAIT_MEMBER_TYPE.html b/doc/html/TTI_MTFC_TRAIT_MEMBER_TYPE.html new file mode 100644 index 0000000..daa3414 --- /dev/null +++ b/doc/html/TTI_MTFC_TRAIT_MEMBER_TYPE.html @@ -0,0 +1,49 @@ + + + +Macro TTI_MTFC_TRAIT_MEMBER_TYPE + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_MTFC_TRAIT_MEMBER_TYPE

+

TTI_MTFC_TRAIT_MEMBER_TYPE — Expands to a metafunction class whose typedef 'type' is either the named type or an unspecified type.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospection.hpp>
+
+TTI_MTFC_TRAIT_MEMBER_TYPE(trait, name)
+
+

Description

+

trait = the name of the metafunction class within the tti namespace.
+ name = the name of the inner type.

+

returns = a metafunction class called "tti::trait" where 'trait' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type.
+ returns = 'type' is the inner type of 'name' if the inner type exists within the enclosing type, else 'type' is an unspecified type.
+

+

The purpose of this macro is to encapsulate the 'name' type as the typedef 'type' of a metafunction class, but only if it exists within the enclosing type. This allows for a lazy evaluation of inner type existence which can be used by other metafunctions in this library.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_TRAIT_HAS_MEMBER.html b/doc/html/TTI_TRAIT_HAS_MEMBER.html index f17a6f1..40dd60a 100644 --- a/doc/html/TTI_TRAIT_HAS_MEMBER.html +++ b/doc/html/TTI_TRAIT_HAS_MEMBER.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,10 +26,11 @@ TTI_TRAIT_HAS_MEMBER(trait, name)
-

Description

+

Description

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

-

returns = a metafunction called "tti::trait" where 'trait' is the macro parameter.

+

returns = a metafunction called "tti::trait" where 'trait' is the macro parameter.
+

The metafunction types and return:

T = the type, in the form of a member data pointer or member function pointer, in which to look for our 'name'.
returns = 'value' is true if the 'name' exists, with the appropriate type, otherwise 'value' is false.

@@ -41,7 +42,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_TRAIT_HAS_MEMBER_DATA.html b/doc/html/TTI_TRAIT_HAS_MEMBER_DATA.html index 536bf67..b6c9270 100644 --- a/doc/html/TTI_TRAIT_HAS_MEMBER_DATA.html +++ b/doc/html/TTI_TRAIT_HAS_MEMBER_DATA.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_TRAIT_HAS_MEMBER_DATA(trait, name)
-

Description

+

Description

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

returns = a metafunction called "tti::trait" where 'trait' is the macro parameter.
@@ -43,7 +43,7 @@


-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_TRAIT_HAS_MEMBER_FUNCTION.html b/doc/html/TTI_TRAIT_HAS_MEMBER_FUNCTION.html index ce1c4aa..6ad1560 100644 --- a/doc/html/TTI_TRAIT_HAS_MEMBER_FUNCTION.html +++ b/doc/html/TTI_TRAIT_HAS_MEMBER_FUNCTION.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_TRAIT_HAS_MEMBER_FUNCTION(trait, name)
-

Description

+

Description

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

returns = a metafunction called "tti::trait" where 'trait' is the macro parameter.
@@ -45,7 +45,7 @@


-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_TRAIT_HAS_STATIC_MEMBER.html b/doc/html/TTI_TRAIT_HAS_STATIC_MEMBER.html index 9c9877b..d51f91b 100644 --- a/doc/html/TTI_TRAIT_HAS_STATIC_MEMBER.html +++ b/doc/html/TTI_TRAIT_HAS_STATIC_MEMBER.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_TRAIT_HAS_STATIC_MEMBER(trait, name)
-

Description

+

Description

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

returns = a metafunction called "tti::trait" where 'trait' is the macro parameter.
@@ -43,7 +43,7 @@


-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION.html b/doc/html/TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION.html index a50629a..e9da528 100644 --- a/doc/html/TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION.html +++ b/doc/html/TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION(trait, name)
-

Description

+

Description

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

returns = a metafunction called "tti::trait" where 'trait' is the macro parameter.
@@ -45,7 +45,7 @@


-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_TRAIT_HAS_TEMPLATE.html b/doc/html/TTI_TRAIT_HAS_TEMPLATE.html index ffb245c..aec9e61 100644 --- a/doc/html/TTI_TRAIT_HAS_TEMPLATE.html +++ b/doc/html/TTI_TRAIT_HAS_TEMPLATE.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_TRAIT_HAS_TEMPLATE(trait, name)
-

Description

+

Description

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

returns = a metafunction called "tti::trait" where 'trait' is the macro parameter.

@@ -42,7 +42,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html b/doc/html/TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html index 4a89002..da6109a 100644 --- a/doc/html/TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html +++ b/doc/html/TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS(trait, name, tpSeq)
-

Description

+

Description

trait = the name of the metafunction within the tti namespace.
name = the name of the inner class template.
tpSeq = a Boost PP sequence which has the class template parameters. Each part of the template parameters separated by a comma ( , ) is put in a separate sequence element.
@@ -43,7 +43,7 @@


-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_TRAIT_HAS_TYPE.html b/doc/html/TTI_TRAIT_HAS_TYPE.html index 0675b95..44699b6 100644 --- a/doc/html/TTI_TRAIT_HAS_TYPE.html +++ b/doc/html/TTI_TRAIT_HAS_TYPE.html @@ -7,13 +7,13 @@ - +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_TRAIT_HAS_TYPE(trait, name)
-

Description

+

Description

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

returns = a metafunction called "tti::trait" where 'trait' is the macro parameter.

@@ -42,7 +42,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_TRAIT_MEMBER_TYPE.html b/doc/html/TTI_TRAIT_MEMBER_TYPE.html index 1c855fd..688a74d 100644 --- a/doc/html/TTI_TRAIT_MEMBER_TYPE.html +++ b/doc/html/TTI_TRAIT_MEMBER_TYPE.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_TRAIT_MEMBER_TYPE(trait, name)
-

Description

+

Description

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

returns = a metafunction called "tti::trait" where 'trait' is the macro parameter.

@@ -43,7 +43,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_VM_HAS_TEMPLATE_CHECK_PARAMS.html b/doc/html/TTI_VM_HAS_TEMPLATE_CHECK_PARAMS.html index 852fcea..4575509 100644 --- a/doc/html/TTI_VM_HAS_TEMPLATE_CHECK_PARAMS.html +++ b/doc/html/TTI_VM_HAS_TEMPLATE_CHECK_PARAMS.html @@ -6,14 +6,14 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_VM_HAS_TEMPLATE_CHECK_PARAMS(name, ...)
-

Description

+

Description

name = the name of the inner class template.
... = variadic macro data which has the class template parameters.

returns = a metafunction called "tti::has_template_check_params_name" where 'name' is the macro parameter.

@@ -41,7 +41,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS.html b/doc/html/TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS.html new file mode 100644 index 0000000..ea5e133 --- /dev/null +++ b/doc/html/TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS.html @@ -0,0 +1,47 @@ + + + +Macro TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS

+

TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS — Expands to a metafunction class which tests whether an inner class template with a particular name and signature exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospectionVM.hpp>
+
+TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS(name, ...)
+
+

Description

+

name = the name of the inner class template.
+ ... = variadic macro data which has the class template parameters.

+

returns = a metafunction class called "tti::mtfc_has_template_check_params_name" where 'name' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ returns = 'value' is true if the 'name' class template, with the signature as defined by the '...' variadic macro data, exists within the enclosing type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html b/doc/html/TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html new file mode 100644 index 0000000..3abd15d --- /dev/null +++ b/doc/html/TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html @@ -0,0 +1,48 @@ + + + +Macro TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS + + + + + + + + +
+
+
+PrevUpHomeNext +
+
+
+
+

Macro TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

+

TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS — Expands to a metafunction class which tests whether an inner class template with a particular name and signature exists.

+
+

Synopsis

+
// In header: <boost/tti/TTIntrospectionVM.hpp>
+
+TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS(trait, name, ...)
+
+

Description

+

trait = the name of the metafunction class within the tti namespace.
+ name = the name of the inner class template.
+ ... = variadic macro data which has the class template parameters.

+

returns = a metafunction class called "tti::trait" where 'trait' is the macro parameter.

+

The metafunction class's 'apply' metafunction types and return:

+

T = the enclosing type in which to look for our 'name'.
+ returns = 'value' is true if the 'name' class template, with the signature as defined by the '...' variadic macro data, exists within the enclosing type, otherwise 'value' is false.

+
+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html b/doc/html/TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html index 18606c7..9c95a7c 100644 --- a/doc/html/TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html +++ b/doc/html/TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS.html @@ -7,13 +7,13 @@ - +

-PrevUpHomeNext +PrevUpHomeNext
@@ -26,7 +26,7 @@ TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS(trait, name, ...)
-

Description

+

Description

trait = the name of the metafunction within the tti namespace.
name = the name of the inner class template.
... = variadic macro data which has the class template parameters.

@@ -42,7 +42,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/header/boost/tti/TTIntrospectionTemplate_hpp.html b/doc/html/header/boost/tti/TTIntrospectionTemplate_hpp.html index 3dc24e5..90b362b 100644 --- a/doc/html/header/boost/tti/TTIntrospectionTemplate_hpp.html +++ b/doc/html/header/boost/tti/TTIntrospectionTemplate_hpp.html @@ -6,21 +6,21 @@ - - + +

-PrevUpHomeNext +PrevUpHomeNext
namespace tti {
   template<typename HasTemplateCheckParams, typename T> 
-    struct mf_has_template_check_params;
+    struct mf_has_template_check_params;
 }
@@ -29,7 +29,7 @@

-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/header/boost/tti/TTIntrospectionVM_hpp.html b/doc/html/header/boost/tti/TTIntrospectionVM_hpp.html index 94315da..c0329ab 100644 --- a/doc/html/header/boost/tti/TTIntrospectionVM_hpp.html +++ b/doc/html/header/boost/tti/TTIntrospectionVM_hpp.html @@ -6,14 +6,14 @@ - +

-PrevUpHomeNext +PrevUpHomeNext
@@ -29,7 +31,7 @@

-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/index.html b/doc/html/index.html index 3448b65..fa3f412 100644 --- a/doc/html/index.html +++ b/doc/html/index.html @@ -35,6 +35,8 @@ Types
Using the Macro Metafunctions
+
Macro + Metafunctions as Metadata
Nullary Type Metafunctions
Using @@ -53,7 +55,7 @@
History
ToDo
Acknowledgments
-
Index
+
Index
@@ -61,7 +63,7 @@ Introduction

- Welcome to the Type Traits Introspection library version 1.1 . + Welcome to the Type Traits Introspection library version 1.2 .

The Type Traits Introspection library, or TTI for short, is a library of macros @@ -105,6 +107,12 @@ when specifying function and data syntax rather than a composite type. These metafunctions are called 'nullary type metafunctions' in the documentation. +

  • + Provide a set of macros for all of the macro metafunctions which create + metafunction classes, so the metafunctions generated by the macro metafunctions + can be passed as metadata. These can be used by the nullary type metafunctions, + and may find other uses for the template metaprogrammer. +
  • The library is a header only library. @@ -146,7 +154,7 @@

    - +

    Last revised: February 06, 2011 at 16:42:29 GMT

    Last revised: February 09, 2011 at 23:49:49 GMT


    diff --git a/doc/html/index/s16.html b/doc/html/index/s16.html new file mode 100644 index 0000000..0462005 --- /dev/null +++ b/doc/html/index/s16.html @@ -0,0 +1,521 @@ + + + +Index + + + + + + + +
    +
    +
    +PrevUpHome +
    +
    +

    +Index

    +

    G H M N T U V

    +
    +
    +G +
    +
    +
    General Functionality
    +
    + + +

    TTI_HAS_TYPE

    TTI_TRAIT_HAS_TYPE

    +
    +
    +H +
    +
    +
    Header < boost/tti/TTIntrospection.hpp >
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    mf_has_member_data

    mf_has_member_function

    mf_has_static_data

    mf_has_static_member_function

    mf_has_template

    mf_has_type

    mf_member_type

    mf_valid_member_type

    TTI_HAS_MEMBER

    TTI_HAS_MEMBER_DATA

    TTI_HAS_MEMBER_FUNCTION

    TTI_HAS_STATIC_MEMBER

    TTI_HAS_STATIC_MEMBER_FUNCTION

    TTI_HAS_TEMPLATE

    TTI_HAS_TEMPLATE_CHECK_PARAMS

    TTI_HAS_TYPE

    TTI_MEMBER_TYPE

    TTI_MTFC_HAS_MEMBER

    TTI_MTFC_HAS_MEMBER_DATA

    TTI_MTFC_HAS_MEMBER_FUNCTION

    TTI_MTFC_HAS_STATIC_MEMBER

    TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION

    TTI_MTFC_HAS_TEMPLATE

    TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS

    TTI_MTFC_HAS_TYPE

    TTI_MTFC_MEMBER_TYPE

    TTI_MTFC_TRAIT_HAS_MEMBER

    TTI_MTFC_TRAIT_HAS_MEMBER_DATA

    TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION

    TTI_MTFC_TRAIT_HAS_STATIC_MEMBER

    TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION

    TTI_MTFC_TRAIT_HAS_TEMPLATE

    TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

    TTI_MTFC_TRAIT_HAS_TYPE

    TTI_MTFC_TRAIT_MEMBER_TYPE

    TTI_TRAIT_HAS_MEMBER

    TTI_TRAIT_HAS_MEMBER_DATA

    TTI_TRAIT_HAS_MEMBER_FUNCTION

    TTI_TRAIT_HAS_STATIC_MEMBER

    TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION

    TTI_TRAIT_HAS_TEMPLATE

    TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

    TTI_TRAIT_HAS_TYPE

    TTI_TRAIT_MEMBER_TYPE

    valid_member_type

    +
    Header < boost/tti/TTIntrospectionTemplate.hpp >
    +
    + + + + + + + + + +

    mf_has_template_check_params

    TTI_HAS_TEMPLATE_CHECK_PARAMS

    TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS

    TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

    TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

    TTI_VM_HAS_TEMPLATE_CHECK_PARAMS

    TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS

    TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

    TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

    +
    Header < boost/tti/TTIntrospectionVM.hpp >
    +
    + + + + +

    TTI_VM_HAS_TEMPLATE_CHECK_PARAMS

    TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS

    TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

    TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

    +
    History
    +
    + + + + + +

    TTI_HAS_MEMBER_DATA

    TTI_HAS_MEMBER_FUNCTION

    TTI_HAS_STATIC_MEMBER_FUNCTION

    TTI_HAS_TYPE

    TTI_MEMBER_TYPE

    +
    +
    +M +
    +
    +
    Macro Metafunctions
    +
    + + + + + + + + + + +

    TTI_HAS_MEMBER

    TTI_HAS_MEMBER_DATA

    TTI_HAS_MEMBER_FUNCTION

    TTI_HAS_STATIC_MEMBER

    TTI_HAS_STATIC_MEMBER_FUNCTION

    TTI_HAS_TEMPLATE

    TTI_HAS_TEMPLATE_CHECK_PARAMS

    TTI_HAS_TYPE

    TTI_MEMBER_TYPE

    TTI_VM_HAS_TEMPLATE_CHECK_PARAMS

    +
    Macro Metafunctions as Metadata
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    TTI_HAS_MEMBER

    TTI_HAS_MEMBER_DATA

    TTI_HAS_MEMBER_FUNCTION

    TTI_HAS_STATIC_MEMBER

    TTI_HAS_STATIC_MEMBER_FUNCTION

    TTI_HAS_TEMPLATE

    TTI_HAS_TEMPLATE_CHECK_PARAMS

    TTI_HAS_TYPE

    TTI_MTFC_HAS_MEMBER

    TTI_MTFC_HAS_MEMBER_DATA

    TTI_MTFC_HAS_MEMBER_FUNCTION

    TTI_MTFC_HAS_STATIC_MEMBER

    TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION

    TTI_MTFC_HAS_TEMPLATE

    TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS

    TTI_MTFC_HAS_TYPE

    TTI_MTFC_TRAIT_HAS_MEMBER

    TTI_MTFC_TRAIT_HAS_MEMBER_DATA

    TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION

    TTI_MTFC_TRAIT_HAS_STATIC_MEMBER

    TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION

    TTI_MTFC_TRAIT_HAS_TEMPLATE

    TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

    TTI_MTFC_TRAIT_HAS_TYPE

    TTI_TRAIT_HAS_MEMBER

    TTI_TRAIT_HAS_MEMBER_DATA

    TTI_TRAIT_HAS_MEMBER_FUNCTION

    TTI_TRAIT_HAS_STATIC_MEMBER

    TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION

    TTI_TRAIT_HAS_TEMPLATE

    TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

    TTI_TRAIT_HAS_TYPE

    TTI_VM_HAS_TEMPLATE_CHECK_PARAMS

    TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS

    TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

    TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS

    +
    mf_has_member_data
    +

    Header < boost/tti/TTIntrospection.hpp >

    +
    mf_has_member_function
    +

    Header < boost/tti/TTIntrospection.hpp >

    +
    mf_has_static_data
    +

    Header < boost/tti/TTIntrospection.hpp >

    +
    mf_has_static_member_function
    +

    Header < boost/tti/TTIntrospection.hpp >

    +
    mf_has_template
    +

    Header < boost/tti/TTIntrospection.hpp >

    +
    mf_has_template_check_params
    +

    Header < boost/tti/TTIntrospectionTemplate.hpp >

    +
    mf_has_type
    +

    Header < boost/tti/TTIntrospection.hpp >

    +
    mf_member_type
    +

    Header < boost/tti/TTIntrospection.hpp >

    +
    mf_valid_member_type
    +

    Header < boost/tti/TTIntrospection.hpp >

    +
    +
    +N +
    +
    +
    +T +
    +
    +
    TTI_HAS_MEMBER
    +
    + + + + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions

    Macro Metafunctions as Metadata

    Nested Types

    Using the Macro Metafunctions

    +
    TTI_HAS_MEMBER_DATA
    +
    + + + + + + + +

    Header < boost/tti/TTIntrospection.hpp >

    History

    Macro Metafunctions

    Macro Metafunctions as Metadata

    Nested Types

    Nullary Type Metafunctions

    Using the Macro Metafunctions

    +
    TTI_HAS_MEMBER_FUNCTION
    +
    + + + + + + + + +

    Header < boost/tti/TTIntrospection.hpp >

    History

    Macro Metafunctions

    Macro Metafunctions as Metadata

    Nested Types

    Nullary Type Metafunctions

    Using the Macro Metafunctions

    Using the Nullary Type Metafunctions

    +
    TTI_HAS_STATIC_MEMBER
    +
    + + + + + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions

    Macro Metafunctions as Metadata

    Nested Types

    Nullary Type Metafunctions

    Using the Macro Metafunctions

    +
    TTI_HAS_STATIC_MEMBER_FUNCTION
    +
    + + + + + + + +

    Header < boost/tti/TTIntrospection.hpp >

    History

    Macro Metafunctions

    Macro Metafunctions as Metadata

    Nested Types

    Nullary Type Metafunctions

    Using the Nullary Type Metafunctions

    +
    TTI_HAS_TEMPLATE
    +
    + + + + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions

    Macro Metafunctions as Metadata

    Nullary Type Metafunctions

    Using the Macro Metafunctions

    +
    TTI_HAS_TEMPLATE_CHECK_PARAMS
    +
    + + + + + + + +

    Header < boost/tti/TTIntrospection.hpp >

    Header < boost/tti/TTIntrospectionTemplate.hpp >

    Macro Metafunctions

    Macro Metafunctions as Metadata

    Nullary Type Metafunctions

    Using the Macro Metafunctions

    Using the Nullary Type Metafunctions

    +
    TTI_HAS_TYPE
    +
    + + + + + + + + + +

    General Functionality

    Header < boost/tti/TTIntrospection.hpp >

    History

    Macro Metafunctions

    Macro Metafunctions as Metadata

    Nested Types

    Nullary Type Metafunctions

    Using the Macro Metafunctions

    Using the Nullary Type Metafunctions

    +
    TTI_MEMBER_TYPE
    +
    + + + + + + + +

    Header < boost/tti/TTIntrospection.hpp >

    History

    Macro Metafunctions

    Nested Types

    Nullary Type Metafunctions

    Using the Macro Metafunctions

    Using the Nullary Type Metafunctions

    +
    TTI_MTFC_HAS_MEMBER
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_MTFC_HAS_MEMBER_DATA
    +
    + + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    Using the Nullary Type Metafunctions

    +
    TTI_MTFC_HAS_MEMBER_FUNCTION
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_MTFC_HAS_STATIC_MEMBER
    +
    + + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    Using the Nullary Type Metafunctions

    +
    TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_MTFC_HAS_TEMPLATE
    +
    + + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    Using the Nullary Type Metafunctions

    +
    TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS
    +
    + + + +

    Header < boost/tti/TTIntrospection.hpp >

    Header < boost/tti/TTIntrospectionTemplate.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_MTFC_HAS_TYPE
    +
    + + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    Using the Nullary Type Metafunctions

    +
    TTI_MTFC_MEMBER_TYPE
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Using the Nullary Type Metafunctions

    +
    TTI_MTFC_TRAIT_HAS_MEMBER
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_MTFC_TRAIT_HAS_MEMBER_DATA
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_MTFC_TRAIT_HAS_STATIC_MEMBER
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_MTFC_TRAIT_HAS_TEMPLATE
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS
    +
    + + + +

    Header < boost/tti/TTIntrospection.hpp >

    Header < boost/tti/TTIntrospectionTemplate.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_MTFC_TRAIT_HAS_TYPE
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_MTFC_TRAIT_MEMBER_TYPE
    +

    Header < boost/tti/TTIntrospection.hpp >

    +
    TTI_TRAIT_HAS_MEMBER
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_TRAIT_HAS_MEMBER_DATA
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_TRAIT_HAS_MEMBER_FUNCTION
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_TRAIT_HAS_STATIC_MEMBER
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_TRAIT_HAS_TEMPLATE
    +
    + + +

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS
    +
    + + + +

    Header < boost/tti/TTIntrospection.hpp >

    Header < boost/tti/TTIntrospectionTemplate.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_TRAIT_HAS_TYPE
    +
    + + + +

    General Functionality

    Header < boost/tti/TTIntrospection.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_TRAIT_MEMBER_TYPE
    +

    Header < boost/tti/TTIntrospection.hpp >

    +
    TTI_VM_HAS_TEMPLATE_CHECK_PARAMS
    +
    + + + + + + +

    Header < boost/tti/TTIntrospectionTemplate.hpp >

    Header < boost/tti/TTIntrospectionVM.hpp >

    Macro Metafunctions

    Macro Metafunctions as Metadata

    Nullary Type Metafunctions

    Using the Macro Metafunctions

    +
    TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS
    +
    + + + + +

    Header < boost/tti/TTIntrospectionTemplate.hpp >

    Header < boost/tti/TTIntrospectionVM.hpp >

    Macro Metafunctions as Metadata

    Using the Nullary Type Metafunctions

    +
    TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS
    +
    + + + +

    Header < boost/tti/TTIntrospectionTemplate.hpp >

    Header < boost/tti/TTIntrospectionVM.hpp >

    Macro Metafunctions as Metadata

    +
    TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS
    +
    + + + +

    Header < boost/tti/TTIntrospectionTemplate.hpp >

    Header < boost/tti/TTIntrospectionVM.hpp >

    Macro Metafunctions as Metadata

    +
    +
    +U +
    +
    +
    +V +
    +
    +
    +
    + + + +
    +
    +
    +PrevUpHome +
    + + diff --git a/doc/html/the_type_traits_introspection_library/tti_acknowledgments.html b/doc/html/the_type_traits_introspection_library/tti_acknowledgments.html index fde8f66..3104ec4 100644 --- a/doc/html/the_type_traits_introspection_library/tti_acknowledgments.html +++ b/doc/html/the_type_traits_introspection_library/tti_acknowledgments.html @@ -7,13 +7,13 @@ - +

    -PrevUpHomeNext +PrevUpHomeNext

    @@ -31,7 +31,7 @@

    Two of the introspection templates are taken from the MPL and lifted into my - library under a different name for the sake of orthogonality, so I would like + library under a different name for the sake of completeness, so I would like to thank Aleksey Gurtovoy and David Abrahams for that library, and Daniel Walker for work on those MPL introspection macros.

    @@ -47,7 +47,7 @@
    -PrevUpHomeNext +PrevUpHomeNext
    diff --git a/doc/html/the_type_traits_introspection_library/tti_detail.html b/doc/html/the_type_traits_introspection_library/tti_detail.html index 8f5f2c2..2e2dd32 100644 --- a/doc/html/the_type_traits_introspection_library/tti_detail.html +++ b/doc/html/the_type_traits_introspection_library/tti_detail.html @@ -146,7 +146,7 @@

    - TTI_HAS_TEMPLATE_CHECK_PARAMS(name,ppSeq[a]) + TTI_HAS_TEMPLATE_CHECK_PARAMS(name,ppSeq[a])

    @@ -161,12 +161,12 @@

    - Class Template with params using variadic macros[b] + Class Template with params using variadic macros[b]

    - TTI_VM_HAS_TEMPLATE_CHECK_PARAMS(name,...[c]) + TTI_VM_HAS_TEMPLATE_CHECK_PARAMS(name,...[c])

    @@ -324,14 +324,14 @@ -

    [a] +

    [a] A Boost PP data sequence with each comma separated portion of the template parameters as its own sequence element.

    -

    [b] +

    [b] Header file is TTIntrospectionVM.hpp.

    -

    [c] +

    [c] The template parameters as variadic data.

    diff --git a/doc/html/the_type_traits_introspection_library/tti_history.html b/doc/html/the_type_traits_introspection_library/tti_history.html index 415b859..a29fcd0 100644 --- a/doc/html/the_type_traits_introspection_library/tti_history.html +++ b/doc/html/the_type_traits_introspection_library/tti_history.html @@ -19,8 +19,18 @@ +

    + + Version + 1.2 +

    +
    • + Added the set of metafunction class macros for passing the macro metafunctions + as metadata. This complements passing the macro metafunctions as metadata + using placeholder expressions. +

    - + Version 1.1

    @@ -105,7 +115,7 @@

    - + Version 1.0

    diff --git a/doc/html/the_type_traits_introspection_library/tti_metaclasses.html b/doc/html/the_type_traits_introspection_library/tti_metaclasses.html new file mode 100644 index 0000000..08e6a82 --- /dev/null +++ b/doc/html/the_type_traits_introspection_library/tti_metaclasses.html @@ -0,0 +1,420 @@ + + + +Macro Metafunctions as Metadata + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    + +

    + As specified in the Boost MPL library, there are two ways to pass metafunctions + as metadata, and both ways fall under the Boost MPL terminology of 'lambda + expressions': +

    +
      +
    • + As a metafunction class +
    • +
    • + As a placeholder expression +
    • +
    +

    + Using a placeholder expression is the easiest way and does not require the + programmer to create a metafunction class for passing the metadata. The syntax + for this is fairly simple. The syntax for passing a macro metafunction becomes + 'macrometafunction<_>' etc. depending on how many parameters are bring + passed. Thus for two parameters we would have 'macrometafunction<_,_>' + etc., with another placeholder ('_') added for each subsequent parameter. +

    +

    + However using a placeholder expression may not be the fastest way when considering + compile-time speed. Because of this the TTI library provides a set of macros + for each of the macro metafunctions which generate a corresponding metafunction + class. We will call this set of macros the 'metafunction class macros'. +

    +

    + These macros take exactly the same macro parameters as their corresponding + macro metafunctions. They generate a corresponding metafunction class rather + than a metafunction itself, which allows us to pass our macro metafunctions + as metadata, just as using placeholder expressions allows us to do. +

    +

    + For these metafunction class macros there is a simple form and a complex form + name just as there is for the macro metafunctions. For each macro metafunction, + the name for the corresponding metafunction class macro is the macro metafunction + name with the sequence 'MTFC_' ( for "MeTaFunction Class" ) following + the TTI_ ( or TTI_VM_ ) portion of the macro metafunction name. The subsequent + metafunction class name, using the simple form, is the same name as the corresponding + macro metafunction name but with 'mtfc_' prepended to the name. +

    +

    + As with the complex form name of the macro metafunctions, the complex form + name of the corresponding metafunction class macros is completely determined + by the first 'trait' parameter. +

    +

    + In the following table I do not specify the macro parameters as they are exactly + the same as those for their corresponding macro metafunction: +

    +
    +

    Table 1.4. TTI Metafunction Classes

    +
    +++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +

    + Macro Metafunction +

    +
    +

    + Metafunction Class Macro +

    +
    +

    + Metafunction Class Name +

    +
    +

    + TTI_HAS_TYPE +

    +
    +

    + TTI_MTFC_HAS_TYPE +

    +
    +

    + tti::mtfc_has_type_'name' +

    +
    +

    + TTI_TRAIT_HAS_TYPE +

    +
    +

    + TTI_MTFC_TRAIT_HAS_TYPE +

    +
    +

    + tti::'trait' +

    +
    +

    + TTI_HAS_TEMPLATE +

    +
    +

    + TTI_MTFC_HAS_TEMPLATE +

    +
    +

    + tti::mtfc_has_template_'name' +

    +
    +

    + TTI_TRAIT_HAS_TEMPLATE +

    +
    +

    + TTI_MTFC_TRAIT_HAS_TEMPLATE +

    +
    +

    + tti::'trait' +

    +
    +

    + TTI_HAS_TEMPLATE_CHECK_PARAMS +

    +
    +

    + TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS +

    +
    +

    + tti::mtfc_has_template_check_params_'name' +

    +
    +

    + TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS +

    +
    +

    + TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS +

    +
    +

    + tti::'trait' +

    +
    +

    + TTI_VM_HAS_TEMPLATE_CHECK_PARAMS +

    +
    +

    + TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS +

    +
    +

    + tti::mtfc_has_template_check_params_'name' +

    +
    +

    + TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS +

    +
    +

    + TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS +

    +
    +

    + tti::'trait' +

    +
    +

    + TTI_HAS_MEMBER +

    +
    +

    + TTI_MTFC_HAS_MEMBER +

    +
    +

    + tti::mtfc_has_member_'name' +

    +
    +

    + TTI_TRAIT_HAS_MEMBER +

    +
    +

    + TTI_MTFC_TRAIT_HAS_MEMBER +

    +
    +

    + tti::'trait' +

    +
    +

    + TTI_HAS_MEMBER_DATA +

    +
    +

    + TTI_MTFC_HAS_MEMBER_DATA +

    +
    +

    + tti::mtfc_has_member_data_'name' +

    +
    +

    + TTI_TRAIT_HAS_MEMBER_DATA +

    +
    +

    + TTI_MTFC_TRAIT_HAS_MEMBER_DATA +

    +
    +

    + tti::'trait' +

    +
    +

    + TTI_HAS_MEMBER_FUNCTION +

    +
    +

    + TTI_MTFC_HAS_MEMBER_FUNCTION +

    +
    +

    + tti::mtfc_has_member_function_'name' +

    +
    +

    + TTI_TRAIT_HAS_MEMBER_FUNCTION +

    +
    +

    + TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION +

    +
    +

    + tti::'trait' +

    +
    +

    + TTI_HAS_STATIC_MEMBER +

    +
    +

    + TTI_MTFC_HAS_STATIC_MEMBER +

    +
    +

    + tti::has_static_member_'name' +

    +
    +

    + TTI_TRAIT_HAS_STATIC_MEMBER +

    +
    +

    + TTI_MTFC_TRAIT_HAS_STATIC_MEMBER +

    +
    +

    + tti::'trait' +

    +
    +

    + TTI_HAS_STATIC_MEMBER_FUNCTION +

    +
    +

    + TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION +

    +
    +

    + tti::has_static_member_function_'name' +

    +
    +

    + TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION +

    +
    +

    + TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION +

    +
    +

    + tti::'trait' +

    +
    +
    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/the_type_traits_introspection_library/tti_metafunctions.html b/doc/html/the_type_traits_introspection_library/tti_metafunctions.html index 8e9cf04..bfe67e7 100644 --- a/doc/html/the_type_traits_introspection_library/tti_metafunctions.html +++ b/doc/html/the_type_traits_introspection_library/tti_metafunctions.html @@ -6,14 +6,14 @@ - +

    -PrevUpHomeNext +PrevUpHomeNext

    @@ -21,27 +21,41 @@ Type Metafunctions

    - The nullary type metafunctions parallel most of the macro metafunctions but - more easily allow a syntax where nested types can be specified without needing - to manually reach into the 'type' member of TTI_MEMBER_TYPE or its nullary - type metafunction equivalent of tti::mf_member_type. In a very real way the - nullary type metafunctions exist just to provide syntactic improvements over - the macro metafunctions and are not needed to use the library, since all of - the library functionality is already provided with the macro metafunctions. + The macro metafunctions provide a complete set of functionality for anything + one would like to do using the TTI library. Why then do we have another set + of parallel functionality as nullary type metafunctions ? +

    +

    + The nullary type metafunctions parallel those macro metafunctions in which + types are specified individually rather than in a composite manner. The individual + types are passed to the nullary type metafunctions as nullary metafunctions, + hence the name of this group of metafunctions. They more easily allow a syntax + where nested types can be specified without needing to manually reach into + the 'type' member of TTI_MEMBER_TYPE or the 'type' member of its nullary type + metafunction equivalent called tti::mf_member_type. +

    +

    + In a very real way the nullary type metafunctions exist just to provide syntactic + improvements over the macro metafunctions and are not needed to use the library, + since all of the library functionality is already provided with the macro metafunctions. Nonetheless syntactic ease of use is a very real goal of the TTI library and therefore these metafunctions are provided to allow that syntactic improvement.

    - For each of these nullary type metafunctions the first parameter is a Boost - MPL lambda expression using its corresponding the macro metafunction to pass - metafunctions as data. The easiest way to do this is to use a Boost MPL placeholder - expression. The syntax for passing the corresponding macro metafunction becomes - 'macrometafunction<>' etc. depending on how - many parameters are bring passed. Thus for two parameters we would have 'macrometafunction<,>' etc., with another placeholder ('') added - for each subsequent parameter. + The nullary type metafunctions reuse the metafunctions generated by the macro + metafunctions. To do this the result of a corresponding macro metafunction + needs to be passed as metadata to a given nullary metafunction.

    - The remaining parameter are 'types'. These 'types' always consist first of + A lambda expression, in the form of a metafunction class or a placeholder expression, + is passed as the first parameter to our nullary type metafunctions. We have + already seen how the TTI library supplies metafunction classes through the + use of metafunction class macros for each of the macro metafunctions. The end-user + can use these metafunction classes directly, or can use placeholder expressions + with the metafunctions generated by the macro metafunctions. +

    +

    + The remaining parameters are 'types'. These 'types' always consist first of the enclosing type and then possibly other types which make up the signature of whatever inner element we are introspecting. Each of these 'types' is passed as a nullary metafunction whose typedef 'type' is the actual type. @@ -50,9 +64,10 @@ The only exception to this use of nullary type metafunctions when specifying 'types' is when a Boost function_types tag type, which is optional, is specified as an addition to the function signature. Also when dealing with a function - signature and parameter types are being passed, while the parameter 'types' - themselves are in the form of nullary metafunctions, the MPL forward sequence - which contains the parameter 'types' should not be wrapped as a nullary metafunction. + signature and parameter types being passed, while the parameter 'types' themselves + are in the form of nullary metafunctions, the MPL forward sequence which contains + the parameter 'types' is a plain type and should not be wrapped as a nullary + metafunction.

    For a type which is in scope, we can always use boost::mpl::identity to create @@ -93,7 +108,7 @@ conflict with the macro metafunction names generated by the library.

    -

    Table 1.4. TTI Nullary Type Metafunctions

    +

    Table 1.5. TTI Nullary Type Metafunctions

    @@ -210,7 +225,7 @@

    - tti::mf_has_template_check_params + tti::mf_has_template_check_params

    @@ -331,7 +346,7 @@

    - tti::mf_has_static_member_function + tti::mf_has_static_member_function

    @@ -372,7 +387,7 @@ specify nested types in those signatures without using the T::InnerType notation.

    - + Nullary type metafunction member_type equivalent

    @@ -382,7 +397,7 @@ also the equivalent nullary type metafunction.

    -

    Table 1.5. TTI Nested Type Nullary Type Metafunction

    +

    Table 1.6. TTI Nested Type Nullary Type Metafunction

    @@ -517,7 +532,7 @@ or not our tti::mf_member_type nested type actually exists.

    -

    Table 1.6. TTI Nested Type Nullary Type Metafunction Existence

    +

    Table 1.7. TTI Nested Type Nullary Type Metafunction Existence

    @@ -581,7 +596,7 @@

    -PrevUpHomeNext +PrevUpHomeNext
    diff --git a/doc/html/the_type_traits_introspection_library/tti_nested_type.html b/doc/html/the_type_traits_introspection_library/tti_nested_type.html index 44fc2a9..01fc068 100644 --- a/doc/html/the_type_traits_introspection_library/tti_nested_type.html +++ b/doc/html/the_type_traits_introspection_library/tti_nested_type.html @@ -21,7 +21,7 @@ Types

    - + The problem

    @@ -73,7 +73,7 @@ code which we want.

    - + The solution

    @@ -236,7 +236,7 @@ types is easy.

    - + A more elegant solution

    @@ -256,8 +256,7 @@ the specifying of nested types easy and error-free to use.

    - This group of nullary type metafunctions will be fully explained later after - we give some examples of macro metafunction use. + This group of nullary type metafunctions will be fully explained later.

    diff --git a/doc/html/the_type_traits_introspection_library/tti_tests.html b/doc/html/the_type_traits_introspection_library/tti_tests.html index 8eaaeae..83d7eb5 100644 --- a/doc/html/the_type_traits_introspection_library/tti_tests.html +++ b/doc/html/the_type_traits_introspection_library/tti_tests.html @@ -6,14 +6,14 @@ - +

    -PrevUpHomeNext +PrevUpHomeNext

    @@ -44,7 +44,7 @@


    -PrevUpHomeNext +PrevUpHomeNext
    diff --git a/doc/html/the_type_traits_introspection_library/tti_usingMM.html b/doc/html/the_type_traits_introspection_library/tti_usingMM.html index c515cab..2b4b6b0 100644 --- a/doc/html/the_type_traits_introspection_library/tti_usingMM.html +++ b/doc/html/the_type_traits_introspection_library/tti_usingMM.html @@ -7,13 +7,13 @@ - +

    -PrevUpHomeNext +PrevUpHomeNext

    @@ -89,7 +89,7 @@ below the same macro is invoked just once to avoid ODR violations.

    - + Type

    @@ -113,7 +113,7 @@ >

    - + Type checking the typedef

    @@ -127,7 +127,7 @@ >

    - + Template

    @@ -142,7 +142,7 @@ >

    - + Template with params

    @@ -158,7 +158,7 @@ >

    - + Template with params using variadic macros

    @@ -183,7 +183,7 @@ >

    - + Member data with composite type

    @@ -198,7 +198,7 @@ >

    - + Member data with individual types

    @@ -214,7 +214,7 @@ >

    - + Member function with composite type

    @@ -230,7 +230,7 @@ >

    - + Member function with individual types

    @@ -248,7 +248,7 @@ >

    - + Static member data

    @@ -264,7 +264,7 @@ >

    - + Static member function with composite type

    @@ -281,7 +281,7 @@ >

    - + Static member function with individual types

    @@ -299,7 +299,7 @@ >

    - + Member type

    @@ -321,7 +321,7 @@ >::type

    - + Member type existence

    @@ -355,7 +355,7 @@
    -PrevUpHomeNext +PrevUpHomeNext
    diff --git a/doc/html/the_type_traits_introspection_library/tti_usingNTM.html b/doc/html/the_type_traits_introspection_library/tti_usingNTM.html index 1879a14..1c21e7a 100644 --- a/doc/html/the_type_traits_introspection_library/tti_usingNTM.html +++ b/doc/html/the_type_traits_introspection_library/tti_usingNTM.html @@ -108,8 +108,14 @@ above. Imagine this being within 'OurTemplateClass' above. In the examples below the same macro is invoked just once to avoid ODR violations.

    +

    + I will also be mixing the way the macro metafunction metadata is passed to + our nullary type metafunctions, whether as a metafunction class or as a placeholder + expression. Both will work just fine since our nullary type metafunctions work + with any lambda expression as the first template parameter. +

    - + Member type

    @@ -120,7 +126,7 @@ using 'tti::mf_member_type'.

    TTI_MEMBER_TYPE(BType)
    -TTI_MEMBER_TYPE(CType)
    +TTI_MTFC_MEMBER_TYPE(CType)
     TTI_MEMBER_TYPE(DType)
     
     typedef
    @@ -134,7 +140,7 @@
     typedef
     tti::mf_member_type
       <
    -  tti::member_type_CType<_>,
    +  tti::mtfc_member_type_CType,
       BTypeNM
       >
     CTypeNM;
    @@ -151,7 +157,7 @@
           We will use these typedefs in the ensuing examples.
         

    - + Type

    @@ -175,7 +181,7 @@ >

    - + Type checking the typedef

    @@ -183,33 +189,33 @@ Does T have a nested typedef called 'ADoubleType' within 'BType::CType::DType' whose type is a 'double' ?

    -
    TTI_HAS_TYPE(ADoubleType)
    +
    TTI_MTFC_HAS_TYPE(ADoubleType)
     
     tti::mf_has_type
       <
    -  tti::has_type_ADoubleType<_,_>,
    +  tti::mtfc_has_type_ADoubleType,
       DTypeNM,
       boost::mpl::identity<double>
       >
     

    - + Template

    Does T have a nested class template called 'AMemberTemplate' within 'BType::CType' whose template parameters are all types ('class' or 'typename') ?

    -
    TTI_HAS_TEMPLATE(AMemberTemplate)
    +
    TTI_MTFC_HAS_TEMPLATE(AMemberTemplate)
     
     tti::mf_has_template
       <
    -  tti::has_template_AMemberTemplate<_>,
    +  tti::mtfc_has_template_AMemberTemplate,
       CTypeNM
       >
     

    - + Template with params

    @@ -226,7 +232,7 @@ >

    - + Template with params using variadic macros

    @@ -243,33 +249,33 @@ Include the 'TTIntrospectionVM.hpp' header file when using this macro.

    -
    TTI_VM_HAS_TEMPLATE_CHECK_PARAMS(MoreParameters,class,class,int,short,class,template <class,int> class InnerTemplate,class)
    +
    TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS(MoreParameters,class,class,int,short,class,template <class,int> class InnerTemplate,class)
     
     tti::mf_has_template_check_params
       <
    -  tti::has_template_check_params_MoreParameters<_>,
    +  tti::mtfc_has_template_check_params_MoreParameters,
       CTypeNM
       >
     

    - + Member data

    Does T have a member data called 'IntBT' whose type is 'BType' ?

    -
    TTI_HAS_MEMBER_DATA(IntBT)
    +
    TTI_MTFC_HAS_MEMBER_DATA(IntBT)
     
     tti::mf_has_member_data
       <
    -  tti::has_member_data_IntBT<_,_>,
    +  tti::mtfc_has_member_data_IntBT,
       boost::mpl::identity<T>,
       BTypeNM
       >
     

    - + Member function

    @@ -289,7 +295,7 @@ >

    - + Static member data

    @@ -297,17 +303,17 @@ Does T have a static member data called 'DSMember' within 'BType::CType::DType' whose type is 'short' ?

    -
    TTI_HAS_STATIC_MEMBER(DSMember)
    +
    TTI_MTFC_HAS_STATIC_MEMBER(DSMember)
     
     tti::mf_has_static_data
       <
    -  tti::has_static_member_DSMember<_,_>,
    +  tti::mtfc_has_static_member_DSMember,
       DTypeNM,
       boost::mpl::identity<short>
       >
     

    - + Static member function

    diff --git a/doc/html/tti/mf_has_member_data.html b/doc/html/tti/mf_has_member_data.html index 48e74f7..4a2a37d 100644 --- a/doc/html/tti/mf_has_member_data.html +++ b/doc/html/tti/mf_has_member_data.html @@ -7,13 +7,13 @@ - +

    -PrevUpHomeNext +PrevUpHomeNext
    @@ -28,11 +28,11 @@ struct mf_has_member_data { };
    -

    Description

    +

    Description

    This metafunction takes its specific types as nullary metafunctions whose typedef 'type' member is the actual type used.

    The metafunction types and return:

    HasMemberData = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_MEMBER_DATA ( or TTI_TRAIT_HAS_MEMBER_DATA ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_>'.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_>'. You can also use the metafunction class generated by the TTI_MTFC_HAS_MEMBER_DATA ( or TTI_MTFC_TRAIT_HAS_MEMBER_DATA ) macro.
    T = the enclosing type as a nullary metafunction.
    R = the type of the member data as a nullary metafunction.

    returns = 'value' is true if the member data exists within the enclosing type, otherwise 'value' is false.

    @@ -44,7 +44,7 @@
    -PrevUpHomeNext +PrevUpHomeNext
    diff --git a/doc/html/tti/mf_has_member_function.html b/doc/html/tti/mf_has_member_function.html index 11b99f5..ee40b60 100644 --- a/doc/html/tti/mf_has_member_function.html +++ b/doc/html/tti/mf_has_member_function.html @@ -30,11 +30,11 @@ struct mf_has_member_function { };
    -

    Description

    +

    Description

    This metafunction takes its specific types, except for the optional parameters, as nullary metafunctions whose typedef 'type' member is the actual type used.

    The metafunction types and return:

    HasMemberFunction = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_MEMBER_FUNCTION ( or TTI_TRAIT_HAS_MEMBER_FUNCTION ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_> ( or optionally 'metafunction<_,_,_> or ' 'metafunction<_,_,_,_> )'.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_> ( or optionally 'metafunction<_,_,_> or ' 'metafunction<_,_,_,_> )'. You can also use the metafunction class generated by the TTI_MTFC_HAS_MEMBER_FUNCTION ( or TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION ) macro.
    T = the enclosing type as a nullary metafunction.
    R = the return type of the member function as a nullary metafunction.
    FS = an optional parameter which is the parameters of the member function, each as a nullary metafunction, as a boost::mpl forward sequence.
    diff --git a/doc/html/tti/mf_has_static_data.html b/doc/html/tti/mf_has_static_data.html index a0dc0d6..94370d1 100644 --- a/doc/html/tti/mf_has_static_data.html +++ b/doc/html/tti/mf_has_static_data.html @@ -6,14 +6,14 @@ - +


    -PrevUpHomeNext +PrevUpHomeNext
    @@ -28,11 +28,11 @@ struct mf_has_static_data { };
    -

    Description

    +

    Description

    This metafunction takes its specific types as nullary metafunctions whose typedef 'type' member is the actual type used.

    The metafunction types and return:

    HasStaticMember = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_STATIC_MEMBER ( or TTI_TRAIT_HAS_STATIC_MEMBER ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_>'.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_>'. You can also use the metafunction class generated by the TTI_MTFC_HAS_STATIC_MEMBER ( or TTI_MTFC_TRAIT_HAS_STATIC_MEMBER ) macro.
    T = the enclosing type as a nullary metafunction.
    R = the type of the static member data as a nullary metafunction.

    returns = 'value' is true if the member data exists within the enclosing type, otherwise 'value' is false.

    @@ -44,7 +44,7 @@
    -PrevUpHomeNext +PrevUpHomeNext
    diff --git a/doc/html/tti/mf_has_static_member_fu_id397272.html b/doc/html/tti/mf_has_static_member_fu_id397272.html new file mode 100644 index 0000000..d29c252 --- /dev/null +++ b/doc/html/tti/mf_has_static_member_fu_id397272.html @@ -0,0 +1,54 @@ + + + +Struct template mf_has_static_member_function + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_static_member_function

    +

    tti::mf_has_static_member_function — A metafunction which checks whether a static member function exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospection.hpp>
    +
    +template<typename HasStaticMemberFunction, typename T, typename R, 
    +         typename FS = boost::mpl::vector<>, 
    +         typename TAG = boost::function_types::null_tag> 
    +struct mf_has_static_member_function {
    +};
    +
    +

    Description

    +

    This metafunction takes its specific types, except for the optional parameters, as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasStaticMemberFunction = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_STATIC_MEMBER_FUNCTION ( or TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION ) macro.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_> ( or optionally 'metafunction<_,_,_> or ' 'metafunction<_,_,_,_> )'.
    + T = the enclosing type as a nullary metafunction.
    + R = the return type of the static member function as a nullary metafunction.
    + FS = an optional parameter which is the parameters of the static member function, each as a nullary metafunction, as a boost::mpl forward sequence.
    + TAG = an optional parameter which is a boost::function_types tag to apply to the static member function.

    +

    returns = 'value' is true if the member function exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_static_member_fu_id406010.html b/doc/html/tti/mf_has_static_member_fu_id406010.html new file mode 100644 index 0000000..46fdf79 --- /dev/null +++ b/doc/html/tti/mf_has_static_member_fu_id406010.html @@ -0,0 +1,54 @@ + + + +Struct template mf_has_static_member_function + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_static_member_function

    +

    tti::mf_has_static_member_function — A metafunction which checks whether a static member function exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospection.hpp>
    +
    +template<typename HasStaticMemberFunction, typename T, typename R, 
    +         typename FS = boost::mpl::vector<>, 
    +         typename TAG = boost::function_types::null_tag> 
    +struct mf_has_static_member_function {
    +};
    +
    +

    Description

    +

    This metafunction takes its specific types, except for the optional parameters, as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasStaticMemberFunction = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_STATIC_MEMBER_FUNCTION ( or TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION ) macro.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_> ( or optionally 'metafunction<_,_,_> or ' 'metafunction<_,_,_,_> )'.
    + T = the enclosing type as a nullary metafunction.
    + R = the return type of the static member function as a nullary metafunction.
    + FS = an optional parameter which is the parameters of the static member function, each as a nullary metafunction, as a boost::mpl forward sequence.
    + TAG = an optional parameter which is a boost::function_types tag to apply to the static member function.

    +

    returns = 'value' is true if the member function exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_static_member_fu_id410380.html b/doc/html/tti/mf_has_static_member_fu_id410380.html new file mode 100644 index 0000000..a302711 --- /dev/null +++ b/doc/html/tti/mf_has_static_member_fu_id410380.html @@ -0,0 +1,54 @@ + + + +Struct template mf_has_static_member_function + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_static_member_function

    +

    tti::mf_has_static_member_function — A metafunction which checks whether a static member function exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospection.hpp>
    +
    +template<typename HasStaticMemberFunction, typename T, typename R, 
    +         typename FS = boost::mpl::vector<>, 
    +         typename TAG = boost::function_types::null_tag> 
    +struct mf_has_static_member_function {
    +};
    +
    +

    Description

    +

    This metafunction takes its specific types, except for the optional parameters, as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasStaticMemberFunction = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_STATIC_MEMBER_FUNCTION ( or TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION ) macro.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_> ( or optionally 'metafunction<_,_,_> or ' 'metafunction<_,_,_,_> )'. You can also use the metafunction class generated by the TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION ( or TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION ) macro.
    + T = the enclosing type as a nullary metafunction.
    + R = the return type of the static member function as a nullary metafunction.
    + FS = an optional parameter which is the parameters of the static member function, each as a nullary metafunction, as a boost::mpl forward sequence.
    + TAG = an optional parameter which is a boost::function_types tag to apply to the static member function.

    +

    returns = 'value' is true if the member function exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_static_member_fu_id412568.html b/doc/html/tti/mf_has_static_member_fu_id412568.html new file mode 100644 index 0000000..05fc0fd --- /dev/null +++ b/doc/html/tti/mf_has_static_member_fu_id412568.html @@ -0,0 +1,54 @@ + + + +Struct template mf_has_static_member_function + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_static_member_function

    +

    tti::mf_has_static_member_function — A metafunction which checks whether a static member function exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospection.hpp>
    +
    +template<typename HasStaticMemberFunction, typename T, typename R, 
    +         typename FS = boost::mpl::vector<>, 
    +         typename TAG = boost::function_types::null_tag> 
    +struct mf_has_static_member_function {
    +};
    +
    +

    Description

    +

    This metafunction takes its specific types, except for the optional parameters, as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasStaticMemberFunction = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_STATIC_MEMBER_FUNCTION ( or TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION ) macro.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_> ( or optionally 'metafunction<_,_,_> or ' 'metafunction<_,_,_,_> )'. You can also use the metafunction class generated by the TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION ( or TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION ) macro.
    + T = the enclosing type as a nullary metafunction.
    + R = the return type of the static member function as a nullary metafunction.
    + FS = an optional parameter which is the parameters of the static member function, each as a nullary metafunction, as a boost::mpl forward sequence.
    + TAG = an optional parameter which is a boost::function_types tag to apply to the static member function.

    +

    returns = 'value' is true if the member function exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_static_member_fu_id413654.html b/doc/html/tti/mf_has_static_member_fu_id413654.html new file mode 100644 index 0000000..73d12ce --- /dev/null +++ b/doc/html/tti/mf_has_static_member_fu_id413654.html @@ -0,0 +1,54 @@ + + + +Struct template mf_has_static_member_function + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_static_member_function

    +

    tti::mf_has_static_member_function — A metafunction which checks whether a static member function exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospection.hpp>
    +
    +template<typename HasStaticMemberFunction, typename T, typename R, 
    +         typename FS = boost::mpl::vector<>, 
    +         typename TAG = boost::function_types::null_tag> 
    +struct mf_has_static_member_function {
    +};
    +
    +

    Description

    +

    This metafunction takes its specific types, except for the optional parameters, as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasStaticMemberFunction = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_STATIC_MEMBER_FUNCTION ( or TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION ) macro.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_> ( or optionally 'metafunction<_,_,_> or ' 'metafunction<_,_,_,_> )'.
    + T = the enclosing type as a nullary metafunction.
    + R = the return type of the static member function as a nullary metafunction.
    + FS = an optional parameter which is the parameters of the static member function, each as a nullary metafunction, as a boost::mpl forward sequence.
    + TAG = an optional parameter which is a boost::function_types tag to apply to the static member function.

    +

    returns = 'value' is true if the member function exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_static_member_fu_id422394.html b/doc/html/tti/mf_has_static_member_fu_id422394.html new file mode 100644 index 0000000..2446155 --- /dev/null +++ b/doc/html/tti/mf_has_static_member_fu_id422394.html @@ -0,0 +1,54 @@ + + + +Struct template mf_has_static_member_function + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_static_member_function

    +

    tti::mf_has_static_member_function — A metafunction which checks whether a static member function exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospection.hpp>
    +
    +template<typename HasStaticMemberFunction, typename T, typename R, 
    +         typename FS = boost::mpl::vector<>, 
    +         typename TAG = boost::function_types::null_tag> 
    +struct mf_has_static_member_function {
    +};
    +
    +

    Description

    +

    This metafunction takes its specific types, except for the optional parameters, as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasStaticMemberFunction = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_STATIC_MEMBER_FUNCTION ( or TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION ) macro.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_> ( or optionally 'metafunction<_,_,_> or ' 'metafunction<_,_,_,_> )'.
    + T = the enclosing type as a nullary metafunction.
    + R = the return type of the static member function as a nullary metafunction.
    + FS = an optional parameter which is the parameters of the static member function, each as a nullary metafunction, as a boost::mpl forward sequence.
    + TAG = an optional parameter which is a boost::function_types tag to apply to the static member function.

    +

    returns = 'value' is true if the member function exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_static_member_fu_id426663.html b/doc/html/tti/mf_has_static_member_fu_id426663.html new file mode 100644 index 0000000..fe7a220 --- /dev/null +++ b/doc/html/tti/mf_has_static_member_fu_id426663.html @@ -0,0 +1,54 @@ + + + +Struct template mf_has_static_member_function + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_static_member_function

    +

    tti::mf_has_static_member_function — A metafunction which checks whether a static member function exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospection.hpp>
    +
    +template<typename HasStaticMemberFunction, typename T, typename R, 
    +         typename FS = boost::mpl::vector<>, 
    +         typename TAG = boost::function_types::null_tag> 
    +struct mf_has_static_member_function {
    +};
    +
    +

    Description

    +

    This metafunction takes its specific types, except for the optional parameters, as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasStaticMemberFunction = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_STATIC_MEMBER_FUNCTION ( or TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION ) macro.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_> ( or optionally 'metafunction<_,_,_> or ' 'metafunction<_,_,_,_> )'.
    + T = the enclosing type as a nullary metafunction.
    + R = the return type of the static member function as a nullary metafunction.
    + FS = an optional parameter which is the parameters of the static member function, each as a nullary metafunction, as a boost::mpl forward sequence.
    + TAG = an optional parameter which is a boost::function_types tag to apply to the static member function.

    +

    returns = 'value' is true if the member function exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_template.html b/doc/html/tti/mf_has_template.html index f5a8d5f..077b657 100644 --- a/doc/html/tti/mf_has_template.html +++ b/doc/html/tti/mf_has_template.html @@ -28,11 +28,11 @@ struct mf_has_template { };
    -

    Description

    +

    Description

    This metafunction takes its enclosing type as nullary metafunctions whose typedef 'type' member is the actual type used.

    The metafunction types and return:

    HasTemplate = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_TEMPLATE ( TTI_TRAIT_HAS_TEMPLATE ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'. You can also use the metafunction class generated by the TTI_MTFC_HAS_TEMPLATE ( TTI_MTFC_TRAIT_HAS_TEMPLATE ) macro.
    T = the enclosing type as a nullary metafunction.

    returns = 'value' is true if the template exists within the enclosing type, otherwise 'value' is false.

    diff --git a/doc/html/tti/mf_has_template_check_p_id398430.html b/doc/html/tti/mf_has_template_check_p_id398430.html new file mode 100644 index 0000000..69ebf19 --- /dev/null +++ b/doc/html/tti/mf_has_template_check_p_id398430.html @@ -0,0 +1,49 @@ + + + +Struct template mf_has_template_check_params + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_template_check_params

    +

    tti::mf_has_template_check_params — A metafunction which checks whether a class template with its parameters exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospectionTemplate.hpp>
    +
    +template<typename HasTemplateCheckParams, typename T> 
    +struct mf_has_template_check_params {
    +};
    +
    +

    Description

    +

    This metafunction takes its enclosing type as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasTemplateCheckParams = a Boost MPL lambda expression using the metafunction generated from either the TTI_HAS_TEMPLATE_CHECK_PARAMS ( TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) or TTI_VM_HAS_TEMPLATE_CHECK_PARAMS ( TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macros.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'.
    + T = The enclosing type as a nullary metafunction.

    +

    returns = 'value' is true if the template exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_template_check_p_id407168.html b/doc/html/tti/mf_has_template_check_p_id407168.html new file mode 100644 index 0000000..4befd09 --- /dev/null +++ b/doc/html/tti/mf_has_template_check_p_id407168.html @@ -0,0 +1,49 @@ + + + +Struct template mf_has_template_check_params + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_template_check_params

    +

    tti::mf_has_template_check_params — A metafunction which checks whether a class template with its parameters exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospectionTemplate.hpp>
    +
    +template<typename HasTemplateCheckParams, typename T> 
    +struct mf_has_template_check_params {
    +};
    +
    +

    Description

    +

    This metafunction takes its enclosing type as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasTemplateCheckParams = a Boost MPL lambda expression using the metafunction generated from either the TTI_HAS_TEMPLATE_CHECK_PARAMS ( TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) or TTI_VM_HAS_TEMPLATE_CHECK_PARAMS ( TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macros.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'.
    + T = The enclosing type as a nullary metafunction.

    +

    returns = 'value' is true if the template exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_template_check_p_id411538.html b/doc/html/tti/mf_has_template_check_p_id411538.html new file mode 100644 index 0000000..d4b4464 --- /dev/null +++ b/doc/html/tti/mf_has_template_check_p_id411538.html @@ -0,0 +1,49 @@ + + + +Struct template mf_has_template_check_params + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_template_check_params

    +

    tti::mf_has_template_check_params — A metafunction which checks whether a class template with its parameters exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospectionTemplate.hpp>
    +
    +template<typename HasTemplateCheckParams, typename T> 
    +struct mf_has_template_check_params {
    +};
    +
    +

    Description

    +

    This metafunction takes its enclosing type as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasTemplateCheckParams = a Boost MPL lambda expression using the metafunction generated from either the TTI_HAS_TEMPLATE_CHECK_PARAMS ( TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) or TTI_VM_HAS_TEMPLATE_CHECK_PARAMS ( TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macros.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'. You can also use the metafunction class generated by either the TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS ( TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macro or the TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS ( TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macro.
    + T = The enclosing type as a nullary metafunction.

    +

    returns = 'value' is true if the template exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_template_check_p_id413726.html b/doc/html/tti/mf_has_template_check_p_id413726.html new file mode 100644 index 0000000..d6a13e3 --- /dev/null +++ b/doc/html/tti/mf_has_template_check_p_id413726.html @@ -0,0 +1,49 @@ + + + +Struct template mf_has_template_check_params + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_template_check_params

    +

    tti::mf_has_template_check_params — A metafunction which checks whether a class template with its parameters exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospectionTemplate.hpp>
    +
    +template<typename HasTemplateCheckParams, typename T> 
    +struct mf_has_template_check_params {
    +};
    +
    +

    Description

    +

    This metafunction takes its enclosing type as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasTemplateCheckParams = a Boost MPL lambda expression using the metafunction generated from either the TTI_HAS_TEMPLATE_CHECK_PARAMS ( TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) or TTI_VM_HAS_TEMPLATE_CHECK_PARAMS ( TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macros.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'. You can also use the metafunction class generated by either the TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS ( TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macro or the TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS ( TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macro.
    + T = The enclosing type as a nullary metafunction.

    +

    returns = 'value' is true if the template exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_template_check_p_id414759.html b/doc/html/tti/mf_has_template_check_p_id414759.html new file mode 100644 index 0000000..896fd69 --- /dev/null +++ b/doc/html/tti/mf_has_template_check_p_id414759.html @@ -0,0 +1,49 @@ + + + +Struct template mf_has_template_check_params + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_template_check_params

    +

    tti::mf_has_template_check_params — A metafunction which checks whether a class template with its parameters exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospectionTemplate.hpp>
    +
    +template<typename HasTemplateCheckParams, typename T> 
    +struct mf_has_template_check_params {
    +};
    +
    +

    Description

    +

    This metafunction takes its enclosing type as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasTemplateCheckParams = a Boost MPL lambda expression using the metafunction generated from either the TTI_HAS_TEMPLATE_CHECK_PARAMS ( TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) or TTI_VM_HAS_TEMPLATE_CHECK_PARAMS ( TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macros.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'.
    + T = The enclosing type as a nullary metafunction.

    +

    returns = 'value' is true if the template exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_template_check_p_id423552.html b/doc/html/tti/mf_has_template_check_p_id423552.html new file mode 100644 index 0000000..845ec82 --- /dev/null +++ b/doc/html/tti/mf_has_template_check_p_id423552.html @@ -0,0 +1,49 @@ + + + +Struct template mf_has_template_check_params + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_template_check_params

    +

    tti::mf_has_template_check_params — A metafunction which checks whether a class template with its parameters exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospectionTemplate.hpp>
    +
    +template<typename HasTemplateCheckParams, typename T> 
    +struct mf_has_template_check_params {
    +};
    +
    +

    Description

    +

    This metafunction takes its enclosing type as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasTemplateCheckParams = a Boost MPL lambda expression using the metafunction generated from either the TTI_HAS_TEMPLATE_CHECK_PARAMS ( TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) or TTI_VM_HAS_TEMPLATE_CHECK_PARAMS ( TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macros.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'.
    + T = The enclosing type as a nullary metafunction.

    +

    returns = 'value' is true if the template exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_template_check_p_id427769.html b/doc/html/tti/mf_has_template_check_p_id427769.html new file mode 100644 index 0000000..84a2f00 --- /dev/null +++ b/doc/html/tti/mf_has_template_check_p_id427769.html @@ -0,0 +1,49 @@ + + + +Struct template mf_has_template_check_params + + + + + + + + +
    +
    +
    +PrevUpHomeNext +
    +
    +
    +
    +

    Struct template mf_has_template_check_params

    +

    tti::mf_has_template_check_params — A metafunction which checks whether a class template with its parameters exists within an enclosing type.

    +
    +

    Synopsis

    +
    // In header: <boost/tti/TTIntrospectionTemplate.hpp>
    +
    +template<typename HasTemplateCheckParams, typename T> 
    +struct mf_has_template_check_params {
    +};
    +
    +

    Description

    +

    This metafunction takes its enclosing type as nullary metafunctions whose typedef 'type' member is the actual type used.

    +

    The metafunction types and return:

    +

    HasTemplateCheckParams = a Boost MPL lambda expression using the metafunction generated from either the TTI_HAS_TEMPLATE_CHECK_PARAMS ( TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) or TTI_VM_HAS_TEMPLATE_CHECK_PARAMS ( TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macros.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'.
    + T = The enclosing type as a nullary metafunction.

    +

    returns = 'value' is true if the template exists within the enclosing type, otherwise 'value' is false.

    +
    +
    + + + +
    +
    +
    +PrevUpHomeNext +
    + + diff --git a/doc/html/tti/mf_has_type.html b/doc/html/tti/mf_has_type.html index 2c33f1d..b102522 100644 --- a/doc/html/tti/mf_has_type.html +++ b/doc/html/tti/mf_has_type.html @@ -29,11 +29,11 @@ struct mf_has_type { };
    -

    Description

    +

    Description

    This metafunction takes its specific types as nullary metafunctions whose typedef 'type' member is the actual type used.

    The metafunction types and return:

    HasType = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_TYPE ( or TTI_TRAIT_HAS_TYPE ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>' ( or optionally 'metafunction<_,_>' ).
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>' ( or optionally 'metafunction<_,_>' ). You can also use the metafunction class generated by the TTI_MTFC_HAS_TYPE ( or TTI_MTFC_TRAIT_HAS_TYPE ) macro.
    T = the enclosing type as a nullary metafunction.
    U = the type of the inner type as a nullary metafunction, as an optional parameter.

    returns = 'value' is true if the type exists within the enclosing type and, if type U is specified, the type is the same as the type U, otherwise 'value' is false.

    diff --git a/doc/html/tti/mf_member_type.html b/doc/html/tti/mf_member_type.html index a0261a6..8ad1d5d 100644 --- a/doc/html/tti/mf_member_type.html +++ b/doc/html/tti/mf_member_type.html @@ -28,11 +28,11 @@ struct mf_member_type { };
    -

    Description

    +

    Description

    This metafunction takes its enclosing type as nullary metafunctions whose typedef 'type' member is the actual type used.

    The metafunction types and return:

    MemberType = a Boost MPL lambda expression using the metafunction generated from the TTI_MEMBER_TYPE ( or TTI_TRAIT_MEMBER_TYPE ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'. You can also use the metafunction class generated by the TTI_MTFC_MEMBER_TYPE ( or TTI_MTFC_TRAIT_MEMBER_TYPE ) macro.
    T = the enclosing type as a nullary metafunction.

    returns = 'type' is the inner type of the 'name' in TTI_MEMBER_TYPE ( or TTI_TRAIT_MEMBER_TYPE ) if the inner type exists within the enclosing type, else 'type' is an unspecified type.
    'valid' is true if the inner type of 'name' exists within the enclosing type, else 'valid' is false.

    diff --git a/doc/html/tti/mf_valid_member_type.html b/doc/html/tti/mf_valid_member_type.html index 57ead09..1773a03 100644 --- a/doc/html/tti/mf_valid_member_type.html +++ b/doc/html/tti/mf_valid_member_type.html @@ -28,7 +28,7 @@ struct mf_valid_member_type { };
    -

    Description

    +

    Description

    The metafunction types and return:

    T = the nullary metafunction from invoking the macro metafunction generated by TTI_MEMBER_TYPE ( TTI_TRAIT_MEMBER_TYPE ) or from invoking tti::mf_member_type.

    returns = 'value' is true if the type is valid, otherwise 'value' is false.

    diff --git a/doc/html/tti/valid_member_type.html b/doc/html/tti/valid_member_type.html index a1e4908..b75285a 100644 --- a/doc/html/tti/valid_member_type.html +++ b/doc/html/tti/valid_member_type.html @@ -28,7 +28,7 @@ struct valid_member_type { };
    -

    Description

    +

    Description

    The metafunction types and return:

    T = returned inner 'type' from invoking the macro metafunction generated by TTI_MEMBER_TYPE ( TTI_TRAIT_MEMBER_TYPE ) or from invoking tti::mf_member_type.

    returns = 'value' is true if the type is valid, otherwise 'value' is false.

    diff --git a/doc/html/typetraitsintrospection_reference.html b/doc/html/typetraitsintrospection_reference.html index 7afba3b..0a8c3ed 100644 --- a/doc/html/typetraitsintrospection_reference.html +++ b/doc/html/typetraitsintrospection_reference.html @@ -32,23 +32,41 @@
     
     TTI_TRAIT_HAS_TYPE(trait, name)
    +TTI_MTFC_TRAIT_HAS_TYPE(trait, name)
     TTI_HAS_TYPE(name)
    +TTI_MTFC_HAS_TYPE(name)
     TTI_TRAIT_MEMBER_TYPE(trait, name)
    +TTI_MTFC_TRAIT_MEMBER_TYPE(trait, name)
     TTI_MEMBER_TYPE(name)
    +TTI_MTFC_MEMBER_TYPE(name)
     TTI_TRAIT_HAS_TEMPLATE(trait, name)
    +TTI_MTFC_TRAIT_HAS_TEMPLATE(trait, name)
     TTI_HAS_TEMPLATE(name)
    +TTI_MTFC_HAS_TEMPLATE(name)
     TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS(trait, name, tpSeq)
    +TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS(trait, name, tpSeq)
     TTI_HAS_TEMPLATE_CHECK_PARAMS(name, tpSeq)
    +TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS(name, tpSeq)
     TTI_TRAIT_HAS_MEMBER(trait, name)
    +TTI_MTFC_TRAIT_HAS_MEMBER(trait, name)
     TTI_HAS_MEMBER(name)
    +TTI_MTFC_HAS_MEMBER(name)
     TTI_TRAIT_HAS_MEMBER_FUNCTION(trait, name)
    +TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION(trait, name)
     TTI_HAS_MEMBER_FUNCTION(name)
    +TTI_MTFC_HAS_MEMBER_FUNCTION(name)
     TTI_TRAIT_HAS_MEMBER_DATA(trait, name)
    +TTI_MTFC_TRAIT_HAS_MEMBER_DATA(trait, name)
     TTI_HAS_MEMBER_DATA(name)
    +TTI_MTFC_HAS_MEMBER_DATA(name)
     TTI_TRAIT_HAS_STATIC_MEMBER(trait, name)
    +TTI_MTFC_TRAIT_HAS_STATIC_MEMBER(trait, name)
     TTI_HAS_STATIC_MEMBER(name)
    +TTI_MTFC_HAS_STATIC_MEMBER(name)
     TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION(trait, name)
    -TTI_HAS_STATIC_MEMBER_FUNCTION(name)
    +TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION(trait, name) +TTI_HAS_STATIC_MEMBER_FUNCTION(name) +TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION(name)
    namespace tti {
       template<typename T> struct valid_member_type;
       template<typename T> struct mf_valid_member_type;
    @@ -66,7 +84,7 @@
       template<typename HasStaticMemberFunction, typename T, typename R, 
                typename FS = boost::mpl::vector<>, 
                typename TAG = boost::function_types::null_tag> 
    -    struct mf_has_static_member_function;
    +    struct mf_has_static_member_function;
       template<typename HasStaticMember, typename T, typename R> 
         struct mf_has_static_data;
     }
    diff --git a/include/boost/tti/TTIntrospection.hpp b/include/boost/tti/TTIntrospection.hpp index 2a64c7a..f5d8f78 100644 --- a/include/boost/tti/TTIntrospection.hpp +++ b/include/boost/tti/TTIntrospection.hpp @@ -284,7 +284,7 @@ namespace tti \ name = the name of the inner type. - returns = a metafunction class called "tti::member_type_name" where 'name' is the macro parameter. + returns = a metafunction class called "tti::mtfc_member_type_name" where 'name' is the macro parameter. The metafunction class's 'apply' metafunction types and return: @@ -406,7 +406,7 @@ namespace tti \ name = the name of the inner template. - returns = a metafunction class called "tti::has_template_name" where 'name' is the macro parameter. + returns = a metafunction class called "tti::mtfc_has_template_name" where 'name' is the macro parameter. The metafunction class's 'apply' metafunction types and return: @@ -535,7 +535,7 @@ namespace tti \ Each part of the template parameters separated by a comma ( , ) is put in a separate sequence element. - returns = a metafunction class called "tti::has_template_check_params_name" where 'name' is the macro parameter. + returns = a metafunction class called "tti::mtfc_has_template_check_params_name" where 'name' is the macro parameter. The metafunction class's 'apply' metafunction types and return: @@ -588,6 +588,43 @@ namespace tti \ } \ /**/ +/// Expands to a metafunction class which tests whether a member data or member function with a particular name and type exists. +/** + + trait = the name of the metafunction class within the tti namespace.
    + name = the name of the inner member. + + returns = a metafunction class called "tti::trait" where 'trait' is the macro parameter.
    + + The metafunction class's 'apply' metafunction types and return: + + T = the type, in the form of a member data pointer or member function pointer, + in which to look for our 'name'.
    + returns = 'value' is true if the 'name' exists, with the appropriate type, + otherwise 'value' is false. + +*/ +#define TTI_MTFC_TRAIT_HAS_MEMBER(trait,name) \ +namespace tti \ + { \ + namespace detail \ + { \ + TTI_DETAIL_TRAIT_HAS_MEMBER(trait,name) \ + } \ + struct trait \ + { \ + template \ + struct apply \ + { \ + typedef typename detail::trait::type type; \ + \ + BOOST_STATIC_CONSTANT(bool,value=type::value); \ + \ + }; \ + }; \ + } \ +/**/ + /// Expands to a metafunction which tests whether a member data or member function with a particular name and type exists. /** @@ -611,6 +648,29 @@ namespace tti \ ) \ /**/ +/// Expands to a metafunction class which tests whether a member data or member function with a particular name and type exists. +/** + + name = the name of the inner member. + + returns = a metafunction class called "tti::mtfc_has_member_name" where 'name' is the macro parameter. + + The metafunction class's 'apply' metafunction types and return: + + T = the type, in the form of a member data pointer or member function pointer, + in which to look for our 'name'.
    + returns = 'value' is true if the 'name' exists, with the appropriate type, + otherwise 'value' is false. + +*/ +#define TTI_MTFC_HAS_MEMBER(name) \ + TTI_MTFC_TRAIT_HAS_MEMBER \ + ( \ + BOOST_PP_CAT(mtfc_has_member_,name), \ + name \ + ) \ +/**/ + /// Expands to a metafunction which tests whether a member function with a particular name and signature exists. /** @@ -714,7 +774,7 @@ namespace tti \ name = the name of the inner member. - returns = a metafunction class called "tti::has_member_function_name" where 'name' is the macro parameter. + returns = a metafunction class called "tti::mtfc_has_member_function_name" where 'name' is the macro parameter. The metafunction class's 'apply' metafunction types and return: @@ -831,7 +891,7 @@ namespace tti \ name = the name of the inner member. - returns = a metafunction class called "tti::has_member_data_name" where 'name' is the macro parameter. + returns = a metafunction class called "tti::mtfc_has_member_data_name" where 'name' is the macro parameter. The metafunction class's 'apply' metafunction types and return: @@ -956,7 +1016,7 @@ namespace tti \ name = the name of the inner member. - returns = a metafunction class called "tti::has_static_member_name" where 'name' is the macro parameter.
    + returns = a metafunction class called "tti::mtfc_has_static_member_name" where 'name' is the macro parameter.
    The metafunction class's 'apply' metafunction types and return: @@ -1080,7 +1140,7 @@ namespace tti \ name = the name of the inner member. - returns = a metafunction class called "tti::has_static_member_function_name" where 'name' is the macro parameter. + returns = a metafunction class called "tti::mtfc_has_static_member_function_name" where 'name' is the macro parameter. The metafunction class's 'apply' metafunction types and return: @@ -1163,7 +1223,8 @@ namespace tti The metafunction types and return: HasType = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_TYPE ( or TTI_TRAIT_HAS_TYPE ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>' ( or optionally 'metafunction<_,_>' ).
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction\<_\>' ( or optionally 'metafunction\<_,_\>' ). + You can also use the metafunction class generated by the TTI_MTFC_HAS_TYPE ( or TTI_MTFC_TRAIT_HAS_TYPE ) macro.
    T = the enclosing type as a nullary metafunction.
    U = the type of the inner type as a nullary metafunction, as an optional parameter. @@ -1196,7 +1257,8 @@ namespace tti The metafunction types and return: MemberType = a Boost MPL lambda expression using the metafunction generated from the TTI_MEMBER_TYPE ( or TTI_TRAIT_MEMBER_TYPE ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction\<_\>'. + You can also use the metafunction class generated by the TTI_MTFC_MEMBER_TYPE ( or TTI_MTFC_TRAIT_MEMBER_TYPE ) macro.
    T = the enclosing type as a nullary metafunction. returns = 'type' is the inner type of the 'name' in TTI_MEMBER_TYPE ( or TTI_TRAIT_MEMBER_TYPE ) @@ -1238,7 +1300,8 @@ namespace tti The metafunction types and return: HasTemplate = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_TEMPLATE ( TTI_TRAIT_HAS_TEMPLATE ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction\<_\>'. + You can also use the metafunction class generated by the TTI_MTFC_HAS_TEMPLATE ( TTI_MTFC_TRAIT_HAS_TEMPLATE ) macro.
    T = the enclosing type as a nullary metafunction. returns = 'value' is true if the template exists within the enclosing type, @@ -1267,7 +1330,8 @@ namespace tti The metafunction types and return: HasMemberFunction = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_MEMBER_FUNCTION ( or TTI_TRAIT_HAS_MEMBER_FUNCTION ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_> ( or optionally 'metafunction<_,_,_> or ' 'metafunction<_,_,_,_> )'.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction\<_,_\> ( or optionally 'metafunction\<_,_,_\> or ' 'metafunction\<_,_,_,_\> )'. + You can also use the metafunction class generated by the TTI_MTFC_HAS_MEMBER_FUNCTION ( or TTI_MTFC_TRAIT_HAS_MEMBER_FUNCTION ) macro.
    T = the enclosing type as a nullary metafunction.
    R = the return type of the member function as a nullary metafunction.
    FS = an optional parameter which is the parameters of the member function, each as a nullary metafunction, as a boost::mpl forward sequence.
    @@ -1307,7 +1371,8 @@ namespace tti The metafunction types and return: HasMemberData = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_MEMBER_DATA ( or TTI_TRAIT_HAS_MEMBER_DATA ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_>'.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction\<_,_\>'. + You can also use the metafunction class generated by the TTI_MTFC_HAS_MEMBER_DATA ( or TTI_MTFC_TRAIT_HAS_MEMBER_DATA ) macro.
    T = the enclosing type as a nullary metafunction.
    R = the type of the member data as a nullary metafunction. @@ -1339,7 +1404,8 @@ namespace tti The metafunction types and return: HasStaticMemberFunction = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_STATIC_MEMBER_FUNCTION ( or TTI_TRAIT_HAS_STATIC_MEMBER_FUNCTION ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_> ( or optionally 'metafunction<_,_,_> or ' 'metafunction<_,_,_,_> )'.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction\<_,_\> ( or optionally 'metafunction\<_,_,_\> or ' 'metafunction\<_,_,_,_\> )'. + You can also use the metafunction class generated by the TTI_MTFC_HAS_STATIC_MEMBER_FUNCTION ( or TTI_MTFC_TRAIT_HAS_STATIC_MEMBER_FUNCTION ) macro.
    T = the enclosing type as a nullary metafunction.
    R = the return type of the static member function as a nullary metafunction.
    FS = an optional parameter which is the parameters of the static member function, each as a nullary metafunction, as a boost::mpl forward sequence.
    @@ -1377,7 +1443,8 @@ namespace tti The metafunction types and return: HasStaticMember = a Boost MPL lambda expression using the metafunction generated from the TTI_HAS_STATIC_MEMBER ( or TTI_TRAIT_HAS_STATIC_MEMBER ) macro.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_,_>'.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction\<_,_\>'. + You can also use the metafunction class generated by the TTI_MTFC_HAS_STATIC_MEMBER ( or TTI_MTFC_TRAIT_HAS_STATIC_MEMBER ) macro.
    T = the enclosing type as a nullary metafunction.
    R = the type of the static member data as a nullary metafunction. diff --git a/include/boost/tti/TTIntrospectionTemplate.hpp b/include/boost/tti/TTIntrospectionTemplate.hpp index 3c37de8..502de3a 100644 --- a/include/boost/tti/TTIntrospectionTemplate.hpp +++ b/include/boost/tti/TTIntrospectionTemplate.hpp @@ -27,7 +27,8 @@ namespace tti HasTemplateCheckParams = a Boost MPL lambda expression using the metafunction generated from either the TTI_HAS_TEMPLATE_CHECK_PARAMS ( TTI_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) or TTI_VM_HAS_TEMPLATE_CHECK_PARAMS ( TTI_VM_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macros.
    - The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction<_>'.
    + The easiest way to generate the lambda expression is to use a Boost MPL placeholder expression of the form 'metafunction\<_\>'. + You can also use the metafunction class generated by either the TTI_MTFC_HAS_TEMPLATE_CHECK_PARAMS ( TTI_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macro or the TTI_VM_MTFC_HAS_TEMPLATE_CHECK_PARAMS ( TTI_VM_MTFC_TRAIT_HAS_TEMPLATE_CHECK_PARAMS ) macro.
    T = The enclosing type as a nullary metafunction. returns = 'value' is true if the template exists within the enclosing type,

    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 +-+oxk%loX!=lXq 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 WsVGWK<1(=TO?Yyts=E5SaRC6BL~Viq literal 395929 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 L{P!#>?E3TW)`_oPWM2Os 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