Iros
 
Loading...
Searching...
No Matches
di::reflection Namespace Reference

Namespaces

namespace  detail
 

Classes

struct  Atom
 
struct  Enumerator
 
struct  Enumerators
 
struct  Field
 
struct  Fields
 

Variables

template<typename T>
constexpr auto atom = Atom<T> {}
 
constexpr auto enum_to_string = detail::EnumToStringFunction {}
 
template<container::FixedString enumerator_name, auto enumerator_value>
constexpr auto enumerator = Enumerator<enumerator_name, enumerator_value> {}
 
template<container::FixedString enum_name>
constexpr auto make_enumerators = detail::MakeEnumeratorsFunction<enum_name> {}
 
template<container::FixedString field_name, auto field_pointer>
constexpr auto field = Field<field_name, field_pointer> {}
 
template<container::FixedString class_name>
constexpr auto make_fields = detail::MakeFieldsFunction<class_name> {}
 
constexpr auto reflect = detail::ReflectFunction {}
 
constexpr auto valid_enum_value = detail::ValidEnumValueFunction {}
 

Variable Documentation

◆ atom

template<typename T>
auto di::reflection::atom = Atom<T> {}
inlineconstexpr

◆ enum_to_string

auto di::reflection::enum_to_string = detail::EnumToStringFunction {}
inlineconstexpr

◆ enumerator

template<container::FixedString enumerator_name, auto enumerator_value>
auto di::reflection::enumerator = Enumerator<enumerator_name, enumerator_value> {}
constexpr

◆ field

template<container::FixedString field_name, auto field_pointer>
auto di::reflection::field = Field<field_name, field_pointer> {}
constexpr

◆ make_enumerators

template<container::FixedString enum_name>
auto di::reflection::make_enumerators = detail::MakeEnumeratorsFunction<enum_name> {}
inlineconstexpr

◆ make_fields

template<container::FixedString class_name>
auto di::reflection::make_fields = detail::MakeFieldsFunction<class_name> {}
inlineconstexpr

◆ reflect

auto di::reflection::reflect = detail::ReflectFunction {}
inlineconstexpr

◆ valid_enum_value

auto di::reflection::valid_enum_value = detail::ValidEnumValueFunction {}
inlineconstexpr