|
libUTL++
|
A simple reflection system. More...
Classes | |
| class | utl::RunTimeClass |
| Store information about a class. More... | |
| class | utl::TRunTimeClass< T > |
| Template version of RunTimeClass. More... | |
| class | utl::TConcreteRunTimeClass< T > |
| Encapsulate class-related knowledge for concrete classes. More... | |
Macros | |
| #define | isA(className) _isA(CLASS(className)) |
| Determine whether the class is derived from the given class. More... | |
| #define | isA2(className, T1, T2) _isA(CLASS2(className, T1, T2)) |
| Determine whether the class is derived from a template class instantiated with the two given parameters. More... | |
| #define | CLASS(className) (className::getThisClass()) |
| Get the RunTimeClass object for the given class. | |
| #define | CLASS2(className, T1, T2) (className<T1, T2>::getThisClass()) |
| Get the RunTimeClass object for a template class instantiated with the two given parameters. | |
| #define | UTL_CLASS_DECL_RTTI_ABC(className) |
| Declares the methods that are associated with run-time type identification (RTTI). | |
| #define | UTL_CLASS_DECL_RTTI(className) |
| Declares the methods that are associated with run-time type identification (RTTI). | |
| #define | UTL_CLASS_DECL_RTTI_TPL(className, T) |
| Declares the methods that are associated with run-time type identification (RTTI) for a template class with one parameter. | |
| #define | UTL_CLASS_DECL_RTTI_TPL2(className, T1, T2) |
| Declares the methods that are associated with run-time type identification (RTTI) for a template class with two parameters. | |
| #define | UTL_CLASS_IMPL_RTTI_ABC(className) |
| Implements the methods that are associated with run-time type identification (RTTI). | |
| #define | UTL_CLASS_IMPL_RTTI(className) |
| Implements the methods that are associated with run-time type identification (RTTI). | |
| #define | UTL_CLASS_IMPL_RTTI_TPL(className, T) |
| Implements the methods that are associated with run-time type identification (RTTI) for a template class. | |
| #define | UTL_CLASS_IMPL_RTTI_TPL2(className, T1, T2) |
| Implements the methods that are associated with run-time type identification (RTTI) for a template class. | |
| #define | UTL_CLASS_IMPL_NAME(className) |
| Define the name of a class. | |
| #define | UTL_CLASS_IMPL_NAME_TPL(className, T) |
| Define the name of a template class with one parameter. | |
| #define | UTL_CLASS_IMPL_NAME_TPL2(className, T1, T2) |
| Define the name of a template class with two parameters. | |
| #define | UTL_CLASS_IMPL_NAME_TPLxTPL2(className, TC, T1, T2) |
| Define the name of a template class with one parameter (which itself is a template class with two parameters). | |
A simple reflection system.
| #define isA | ( | className | ) | _isA(CLASS(className)) |
Determine whether the class is derived from the given class.
Definition at line 230 of file RunTimeClass.h.
Referenced by utl::cast(), and utl::cast_const().
| #define isA2 | ( | className, | |
| T1, | |||
| T2 | |||
| ) | _isA(CLASS2(className, T1, T2)) |
Determine whether the class is derived from a template class instantiated with the two given parameters.
Definition at line 241 of file RunTimeClass.h.