13template<
typename T, usize size>
20 constexpr inline bool array_helper =
false;
22 template<
typename T, usize size>
23 constexpr inline bool array_helper<vocab::Array<T, size>> =
true;
27concept Array = detail::array_helper<meta::RemoveCVRef<T>>;
34template<concepts::Expected T>
37template<concepts::Expected T>
43template<concepts::Expected T>
47 template<
typename T,
typename U>
50 template<
typename X,
typename E,
typename U>
54 template<
typename X,
typename E,
typename U>
59template<
typename T,
typename U>
67template<
typename Exp,
typename T>
70template<
typename Exp,
typename T>
73template<
typename Fal,
typename T>
81template<concepts::Optional T>
87template<concepts::Optional T>
92template<
typename Opt,
typename T>
111 template<concepts::LValueReference T>
112 struct WrapReference<T> : TypeConstant<util::ReferenceWrapper<RemoveReference<T>>> {};
122 template<concepts::ReferenceWrapper T>
123 struct UnwrapReferenceHelper<T> :
TypeConstant<typename T::Value&> {};
139 constexpr inline bool span_helper =
false;
141 template<
typename T, usize extent>
142 constexpr inline bool span_helper<vocab::Span<T, extent>> =
true;
146concept Span = detail::span_helper<meta::RemoveCVRef<T>>;
Definition reference_wrapper.h:14
Definition expected_forward_declaration.h:8
Definition optional_forward_declaration.h:5
Definition unexpected.h:14
Definition any_storable.h:9