12 template<
typename T,
typename M>
15 template<
typename T,
typename M>
16 requires(
requires { M::name; })
17 struct TypeName<T, M> {
18 constexpr static auto name = M::name;
21 template<
typename T,
typename A,
typename M>
22 requires(
requires { TypeName<T, meta::Reflect<T>>::name; })
23 struct TypeName<di::Box<T, A>, M> {
24 constexpr static auto subname = TypeName<T, meta::Reflect<T>>::name;
29template<concepts::Reflectable T,
typename M = Reflect<T>>
30requires(
requires { detail::TypeName<meta::RemoveCVRef<T>, M>::name; })
constexpr auto fixed_string_concat
Definition fixed_string.h:70
FixedString(char const (&)[size]) -> FixedString< size - 1 >
constexpr auto type_name
Definition type_name.h:31
Definition any_storable.h:9