CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::NullTypeInfo Class Reference

#include <CeresEngine/Reflection/TypeInfo.core.hpp>

Inheritance diagram for CeresEngine::NullTypeInfo:
CeresEngine::TypeInfo CeresEngine::ConstructibleTypeTrait CeresEngine::DestructibleTypeTrait CeresEngine::CopyableTypeTrait CeresEngine::MovableTypeTrait

Public Member Functions

StringView getName () const noexcept override
 
std::size_t getSize () const noexcept final
 
std::size_t getAlignment () const noexcept final
 
TypeIdentityHash getIdentityHash () const noexcept override
 
void construct (void *target) const final
 
void destroy (void *target) const final
 
void copy (void *target, const void *source) const final
 
void move (void *target, void *source) const final
 
const TypeInfo & getType (TypeAttribute attribute) const final
 
- Public Member Functions inherited from CeresEngine::TypeInfo
virtual ~TypeInfo ()=default
 
TypeID getID () const noexcept
 
virtual const TypeInfo & desugar () const
 Desugar the type into a raw type.
 
template<typename T >
bool is () const noexcept
 
template<typename T >
const T * as () const noexcept
 
template<typename T >
const T * being () const noexcept
 
const TypeInfo & removeReference () const
 
const TypeInfo & removePointer () const
 
const TypeInfo & removeConst () const
 
virtual const void * access (const void *target) const
 Provides access to the object.
 

Additional Inherited Members

- Protected Member Functions inherited from CeresEngine::ConstructibleTypeTrait
 ~ConstructibleTypeTrait ()=default
 
- Protected Member Functions inherited from CeresEngine::DestructibleTypeTrait
 ~DestructibleTypeTrait ()=default
 
- Protected Member Functions inherited from CeresEngine::CopyableTypeTrait
 ~CopyableTypeTrait ()=default
 
- Protected Member Functions inherited from CeresEngine::MovableTypeTrait
 ~MovableTypeTrait ()=default
 

Member Function Documentation

◆ construct()

void CeresEngine::NullTypeInfo::construct ( void *  target) const
finalvirtual

◆ copy()

void CeresEngine::NullTypeInfo::copy ( void *  target,
const void *  source 
) const
finalvirtual

◆ destroy()

void CeresEngine::NullTypeInfo::destroy ( void *  target) const
finalvirtual

◆ getAlignment()

std::size_t CeresEngine::NullTypeInfo::getAlignment ( ) const
finalvirtualnoexcept

Returns
The size of the type, in bytes. Useful when allocating memory to construct an instance.

Implements CeresEngine::TypeInfo.

◆ getIdentityHash()

TypeIdentityHash CeresEngine::NullTypeInfo::getIdentityHash ( ) const
overridevirtualnoexcept

Returns
The type identity hash.

Implements CeresEngine::TypeInfo.

◆ getName()

StringView CeresEngine::NullTypeInfo::getName ( ) const
overridevirtualnoexcept

Implements CeresEngine::TypeInfo.

◆ getSize()

std::size_t CeresEngine::NullTypeInfo::getSize ( ) const
finalvirtualnoexcept

Returns
The size of the type, in bytes. Useful when allocating memory to construct an instance.

Implements CeresEngine::TypeInfo.

◆ getType()

const TypeInfo & CeresEngine::NullTypeInfo::getType ( TypeAttribute  attribute) const
finalvirtual

Implements CeresEngine::TypeInfo.

◆ move()

void CeresEngine::NullTypeInfo::move ( void *  target,
void *  source 
) const
finalvirtual

The documentation for this class was generated from the following file: