Gaia-ECS v1.0.0
A simple and powerful entity component system
Loading...
Searching...
No Matches
gaia::meta::type_info Struct Referencefinal

Provides compile-time compiler-derived names and hashes for C++ types. More...

#include <type_info.h>

Static Public Member Functions

template<typename T >
static GAIA_NODISCARD constexpr const char * full_name () noexcept
 Returns the complete compiler function signature containing T.
 
template<typename T >
static GAIA_NODISCARD constexpr auto name () noexcept
 Extracts the unqualified compiler spelling of T from the function signature.
 
template<typename T >
static GAIA_NODISCARD constexpr auto hash () noexcept
 Calculates the stable Gaia-ECS hash of the compiler spelling of T.
 

Detailed Description

Provides compile-time compiler-derived names and hashes for C++ types.

Member Function Documentation

◆ full_name()

template<typename T >
static GAIA_NODISCARD constexpr const char * gaia::meta::type_info::full_name ( )
inlinestaticconstexprnoexcept

Returns the complete compiler function signature containing T.

Template Parameters
TType to describe.
Returns
Null-terminated compiler signature string.

◆ hash()

template<typename T >
static GAIA_NODISCARD constexpr auto gaia::meta::type_info::hash ( )
inlinestaticconstexprnoexcept

Calculates the stable Gaia-ECS hash of the compiler spelling of T.

Template Parameters
TType to hash.
Returns
64-bit hash of name<T>().

◆ name()

template<typename T >
static GAIA_NODISCARD constexpr auto gaia::meta::type_info::name ( )
inlinestaticconstexprnoexcept

Extracts the unqualified compiler spelling of T from the function signature.

Template Parameters
TType to describe.
Returns
Span covering the extracted type name.

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