4template<
typename... Types>
13concept Trait =
requires {
typename T::Type; };
25template<concepts::Trait T>
76template<auto val,
typename T = meta::RemoveCVRef<decltype(val)>>
80 template<
bool value,
typename T,
typename U>
83 template<
typename T,
typename U>
84 struct ConditionalHelper<false, T, U> : TypeConstant<U> {};
87template<
bool value,
typename T,
typename U>
106 template<
typename T,
typename U>
107 constexpr inline auto same_as_helper =
false;
110 constexpr inline auto same_as_helper<T, T> =
true;
113template<
typename T,
typename U>
114concept SameAs = detail::same_as_helper<T, U>;
116template<
typename T,
typename... Types>
121 constexpr inline bool language_void_helper =
false;
124 constexpr inline bool language_void_helper<void> =
true;
131 template<
typename T,
template<
typename...>
typename Template>
132 constexpr inline bool instance_of_helper =
false;
134 template<
typename... Types,
template<
typename...>
typename Template>
135 constexpr inline bool instance_of_helper<Template<Types...>, Template> =
true;
138template<
typename T,
template<
typename...>
typename Template>
142 template<
typename T,
template<
auto...>
typename Template>
143 constexpr inline bool instance_of_v_helper =
false;
145 template<
auto... values,
template<
auto...>
typename Template>
146 constexpr inline bool instance_of_v_helper<Template<values...>, Template> =
true;
149template<
typename T,
template<
auto...>
typename Template>
153 template<
typename T,
template<
template<
typename...>
typename...>
typename Template>
154 constexpr inline bool instance_of_template_helper =
false;
156 template<
template<
typename...>
typename... Templates,
template<
template<
typename...>
typename...>
typename Template>
157 constexpr inline bool instance_of_template_helper<Template<Templates...>, Template> =
true;
160template<
typename T,
template<
template<
typename...>
typename...>
typename Template>
161concept InstanceOfT = detail::instance_of_template_helper<T, Template>;
This concept is used with static_assert() to cause the static assert to fail only when the template h...
Definition core.h:98
This concept is used with static_assert() to stop compilation if any provided type is not well-formed...
Definition core.h:103
Definition any_storable.h:9
Definition any_storable.h:9