static_assert( __cplusplus > 2020'99 ); #pragma once #include #include #include namespace Alepha::Hydrogen::Utility ::detail:: fancyTypeName_m { inline namespace exports { std::string fancyTypeName( std::type_index ); template< typename T > std::string fancyTypeName() { return fancyTypeName( typeid( T ) ); } } } namespace Alepha::Hydrogen::Utility::inline exports::inline fancyTypeName_m { using namespace detail::fancyTypeName_m::exports; }