System::BaseTypesInfo< FirstType, BaseTypes... > Class Template Reference

Public Types

typedef FirstType Type
 

Static Public Member Functions

template<typename T >
static bool CallIsForAll (T *object, const TypeInfo &typeInfo)
 

Detailed Description

template<typename FirstType, typename ... BaseTypes>
class System::BaseTypesInfo< FirstType, BaseTypes... >

Provides a template static method that determines if the specified object is an instance of the specified type or of a type that is descendant of the specifid type.

Template Parameters
FirstTypeThe first type in the list of parent types of the object to check
BaseTypesThe list without the first type of parent types of the object to check

Member Typedef Documentation

◆ Type

template<typename FirstType , typename ... BaseTypes>
typedef FirstType System::BaseTypesInfo< FirstType, BaseTypes... >::Type

Member Function Documentation

◆ CallIsForAll()

template<typename FirstType , typename ... BaseTypes>
template<typename T >
static bool System::BaseTypesInfo< FirstType, BaseTypes... >::CallIsForAll ( T *  object,
const TypeInfo typeInfo 
)
inlinestatic

Determines if the specified object is an instance of the specified type or of a type that is descendant of the specifid type.

Parameters
objectA pointer to the object to check
typeInfoA TypeInfo object representing a type to match the type of object or its parent types against.
Returns
True if object is an instance of a type represented by typeInfo or is descendant of that type, otherwise - false
Template Parameters
TThe type of the object to check