Base Framework
Classes | Public Member Functions | Static Public Member Functions | List of all members
Type Class Reference

Type identity. More...

#include <base/Type.h>

Classes

class  Uninitialized
 

Public Member Functions

 Type () noexcept
 
template<class TYPE >
 Type (const TYPE &object) noexcept
 
 Type (const Type &copy) noexcept
 
Typeoperator= (const Type &assign) noexcept
 
bool isInitialized () const noexcept
 
bool isUninitialized () const noexcept
 
bool operator== (const Type &compare) const noexcept
 
bool operator!= (const Type &compare) const noexcept
 
const char * getLocalName () const noexcept
 

Static Public Member Functions

static Type makeType (const std::type_info *_type) noexcept
 
template<class TYPE >
static Type getTypeImpl () noexcept
 
template<class TYPE >
static Type getType () noexcept
 
template<class TYPE >
static Type getType (const TYPE &object) noexcept
 
template<class TYPE >
static Type getType (const TYPE *object) noexcept
 

Detailed Description

Type identity.

This class is used to identify any type within the application.

See also
TypeInfo
Version
1.0.2

Constructor & Destructor Documentation

◆ Type() [1/3]

Type::Type ( )
inlinenoexcept

Initializes type object in an uninitialized state.

◆ Type() [2/3]

template<class TYPE >
Type::Type ( const TYPE &  object)
inlinenoexcept

Initializes type to the type of the specified object.

◆ Type() [3/3]

Type::Type ( const Type copy)
inlinenoexcept

Initializes type object from other type object.

Member Function Documentation

◆ getLocalName()

const char* Type::getLocalName ( ) const
noexcept

Returns a compiler specific string identifying the type uniquely. The return value is unspecified for uninitialized type objects. The string could be a multibyte character string.

See also
TypeInfo

◆ getType() [1/3]

template<class TYPE >
static Type Type::getType ( )
inlinestaticnoexcept

Returns the type object for the specified type.

◆ getType() [2/3]

template<class TYPE >
static Type Type::getType ( const TYPE &  object)
inlinestaticnoexcept

Returns the type object for the type of the specified object.

◆ getType() [3/3]

template<class TYPE >
static Type Type::getType ( const TYPE *  object)
inlinestaticnoexcept

Returns the type object for the type of the specified object.

◆ getTypeImpl()

template<class TYPE >
static Type Type::getTypeImpl ( )
inlinestaticnoexcept

Returns Type.

◆ isInitialized()

bool Type::isInitialized ( ) const
inlinenoexcept

Returns true if the type object has been initialized.

◆ isUninitialized()

bool Type::isUninitialized ( ) const
inlinenoexcept

Returns true if the type object hasn't been initialized.

◆ makeType()

static Type Type::makeType ( const std::type_info *  _type)
inlinestaticnoexcept

Convert native type to Type.

◆ operator!=()

bool Type::operator!= ( const Type compare) const
inlinenoexcept

Returns true if the types are different.

Returns
False if both types are uninitialized.

◆ operator=()

Type& Type::operator= ( const Type assign)
inlinenoexcept

Assignment of type object from other type object.

◆ operator==()

bool Type::operator== ( const Type compare) const
inlinenoexcept

Returns true if the types are identical.

Returns
True if both types are uninitialized.