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.