cpp-reflect
C++ Reflection and Annotations Library
Loading...
Searching...
No Matches
type_name.cppm File Reference
module reflect

! More...

#include <cstddef>
import reflect:types;
import std;
+ Include dependency graph for type_name.cppm:

Go to the source code of this file.

Classes

struct  refl::detail::type_name_holder< T >
 
struct  refl::detail::type_name_holder_pack< Pack >
 
struct  refl::detail::type_name_holder_pack_1t1i< Pack >
 
struct  refl::detail::pack_type_id< T >
 
struct  refl::detail::pack_type_id< Pack< Ts... > >
 
struct  refl::detail::pack_type_id< Pack< T, I > >
 

Namespaces

namespace  refl
 
namespace  refl::detail
 

Functions

template<std::size_t... Is>
constexpr auto refl::detail::substring_as_array (std::string_view s, std::index_sequence< Is... >)
 
template<typename T>
constexpr auto refl::detail::type_name_array ()
 
template<template< typename... > typename Pack>
constexpr auto refl::detail::type_name_array_pack ()
 
template<template< typename T, std::size_t I > typename Pack>
constexpr auto refl::detail::type_name_array_pack_1t1i ()
 
template<typename T>
constexpr auto refl::detail::type_name_str ()
 
template<template< typename... > typename Pack>
constexpr auto refl::detail::type_name_str_pack ()
 
template<template< typename T, std::size_t I > typename Pack>
constexpr auto refl::detail::type_name_str_pack_1t1i ()
 
constexpr std::uint64_t refl::detail::fnv1a_partial (std::uint64_t partial, std::string_view s)
 
constexpr std::uint64_t refl::detail::fnv1a_append (std::uint64_t partial, std::string_view s)
 
constexpr std::uint64_t refl::detail::fnv1a (std::string_view s)
 

Variables

template<typename T>
constexpr auto refl::type_name = detail::type_name_str<T>()
 
template<template< typename... > typename Pack>
constexpr auto refl::pack_name = detail::type_name_str_pack<Pack>()
 
template<template< typename T, std::size_t I > typename Pack>
constexpr auto refl::pack_1t1i_name = detail::type_name_str_pack_1t1i<Pack>()
 
template<typename T>
constexpr type_id_t refl::type_id = detail::fnv1a(type_name<T>)
 
template<template< typename... > typename Pack>
constexpr type_id_t refl::pack_id = detail::fnv1a(pack_name<Pack>)
 
template<template< typename T, std::size_t I > typename Pack>
constexpr type_id_t refl::pack_1t1i_id = detail::fnv1a(pack_1t1i_name<Pack>)
 
template<typename T>
constexpr type_id_t refl::pack_type_id = detail::pack_type_id<T>::value
 

Detailed Description

!

!

Definition in file type_name.cppm.