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

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

Inheritance diagram for CeresEngine::ByteTypeInfo:
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 TypeInfogetType (TypeAttribute attribute) const final
 
- Public Member Functions inherited from CeresEngine::TypeInfo
virtual ~TypeInfo ()=default
 
TypeID getID () const noexcept
 
virtual const TypeInfodesugar () const
 Desugar the type into a raw type.
 
template<typename T >
bool is () const noexcept
 
template<typename T >
const Tas () const noexcept
 
template<typename T >
const Tbeing () const noexcept
 
const TypeInforemoveReference () const
 
const TypeInforemovePointer () const
 
const TypeInforemoveConst () const
 
virtual const voidaccess (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::ByteTypeInfo::construct ( void target) const
finalvirtual

◆ copy()

void CeresEngine::ByteTypeInfo::copy ( void target,
const void source 
) const
finalvirtual

◆ destroy()

void CeresEngine::ByteTypeInfo::destroy ( void target) const
finalvirtual

◆ getAlignment()

std::size_t CeresEngine::ByteTypeInfo::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::ByteTypeInfo::getIdentityHash ( ) const
overridevirtualnoexcept

Returns
The type identity hash.

Implements CeresEngine::TypeInfo.

◆ getName()

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

Implements CeresEngine::TypeInfo.

◆ getSize()

std::size_t CeresEngine::ByteTypeInfo::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::ByteTypeInfo::getType ( TypeAttribute  attribute) const
finalvirtual

Implements CeresEngine::TypeInfo.

◆ move()

void CeresEngine::ByteTypeInfo::move ( void target,
void source 
) const
finalvirtual

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