Tatooine
Classes | Namespaces | Concepts | Typedefs | Functions | Variables
reflection.h File Reference

Go to the source code of this file.

Classes

struct  tatooine::reflection::reflector< T >
 
struct  tatooine::reflection::is_reflectable_impl< T >
 
struct  tatooine::reflection::get_type_impl< I, T >
 

Namespaces

namespace  tatooine
 
namespace  tatooine::reflection
 

Concepts

concept  tatooine::reflection::reflectable
 

Typedefs

template<std::size_t I, typename T >
using tatooine::reflection::get_type = typename get_type_impl< I, T >::type
 

Functions

template<typename T >
constexpr auto tatooine::reflection::num_members () -> std::size_t
 Return number of fields in a reflector struct. More...
 
template<typename T >
constexpr auto tatooine::reflection::num_members (T &&) -> std::size_t
 
template<reflectable T, typename V >
constexpr auto tatooine::reflection::for_each (T &&t, V &&v)
 Iterate over each registered member. More...
 
template<std::size_t idx, reflectable T>
constexpr auto tatooine::reflection::get (T &&t)
 
template<std::size_t idx, reflectable T>
constexpr auto tatooine::reflection::name ()
 
template<std::size_t idx, typename T >
constexpr auto tatooine::reflection::name (T &&) -> decltype(name< idx, T >())
 
template<reflectable T>
constexpr auto tatooine::reflection::name ()
 
template<reflectable T>
constexpr auto tatooine::reflection::name (T &&)
 

Variables

template<typename T >
static constexpr auto tatooine::reflection::is_reflectable = is_reflectable_impl<T>::value